169 похожих чатов

Привет! А. Есть список всех услуг (state) Б. Есть список активных услуг

- фильтр от всех (getter)
В. Есть итоговая сумма по активным услугам (getter)

Мне нужно добавить условие активации услуг в зависимости от итоговой суммы заказа.

и выходит, что Б использует В, чтобы отфильтровать услуги. Но при этом В рассчитывается на основе списка Б. И оно закономерно зацикливается и обрывает стек ошибкой.

Подскажите, пожалуйста, как можно избежать цикла в этом случае?

10 ответов

7 просмотров

как б использует в, если в это просто итоговая сумма

Kos Smokvin- Автор вопроса
Dinar Galimov
как б использует в, если в это просто итоговая сум...

Берёт стоимость каждой активной услуги и суммирует её. Когда итоговая сумма обновляется - начинает меняться список активных услуг, так как итоговая изменилась. Так как список изменился - начинает пересчитывать итого - и по кругу

Kos Smokvin
Берёт стоимость каждой активной услуги и суммирует...

а зачем менять Б, когда изменился В, если В меняется только тогда, когда меняется Б. или это не правда?

Kos Smokvin- Автор вопроса
Dinar Galimov
а зачем менять Б, когда изменился В, если В меняет...

Потому что мне нужен фильтр по итоговой сумме заказа. У каждой услуги настраивается условие отображения вроде "Отображать ЕСЛИ общая сумма заказа больше 100" Отображать = активная услуга

Kos Smokvin- Автор вопроса
Dinar Galimov
показывайте код

https://codesandbox.io/s/vuex-store-forked-ioi6b?file=/src/store.js Список услуг имеет стоимость и лимит. Лимит определяет активная ли услуга, если лимит услуги больше ОБЩЕЙ СТОИМОСТИ всех активных услуг. И в итоге список активных услуг опирается на общую стоимость. А общая стоимость на список активных услуг. Я понимаю почему это не работает. Но подскажите, пожалуйста, как переделать, чтобы добиться нужной мне логики: Показать список услуг у которых значение лимита выше чем общая стоимость всех активных услуг на данный момент.

Kos Smokvin- Автор вопроса
Dinar Galimov
показывайте код

Обновил ссылку в моём сообщении выше. Был недосохранённый фиддл

Kos Smokvin- Автор вопроса
Kos Smokvin
https://codesandbox.io/s/vuex-store-forked-ioi6b?f...

Нужно какое то промежуточное закешированное значение total - но никак не могу сообразить, как именно его реализовать

Kos Smokvin
Нужно какое то промежуточное закешированное значен...

ты не понимаешь, какой результат хочешь получить в итоге, поэтому у тебя и ничего не работает

Kos Smokvin- Автор вопроса
Artyom Tuchkov
ты не понимаешь, какой результат хочешь получить в...

Не соглашусь. Результат вполне понятен. Показать на странице список только тех услуг, у которых значение limit больше чем общая сумма всех показанных на странице услуг.

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
60
Хотел бы спросить у знающих, правильную ли я выбрал книгу для начала изучения ассемблера Юрова В.И ? Или есть более лучшие книги для начала обучения?
Botsman
25
Книга Юрова В.И пойдёт для обучения?
Botsman
24
$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
> Примечательно, что новый владелец удаляет из GitHub любые жалобы, указывающие на подозрительную активность или смену владельца, и, видимо, рассчитывает на то, что пользовате...
Alex Sherbakov
2
Hey there Which is the best Linux destro for developers (coding)? To my research on reddit, they said Linux mint is good for mid level spec and Ubuntu for high Lev hardwar...
Wiz 🪄
11
И ещё вопрос: можно ли типа как на дос как-то запариться и с помощью прерываний выводить текст, вместо функции printf ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
34
а мы ещё не созрели до того, чтобы создать отдельный чатик про настройку редакторов?
Cheese Syrowiecki
16
Всем привет! У меня почему-то по-разному отображается TListView в Debug и Release режимах (FireMonkey)! При запуске под Win приложения TListView заливается программо. в Debug ...
Александр COM
8
Ладно, ещё тупого спрошу. Код должен банально вывести значение регистра на консоль, на деле же не выводя ничего, просто оставляя нерабочую консоль (открыта, ничего не написан...
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
25
Карта сайта