Как отключить производные объекты в геттере от состояния магазина Vuex? - PullRequest
0 голосов
/ 12 марта 2020

У меня есть Vuex getter:

    sectionsAndSubSectionsJoined(state) {
        var sections = state.aBMudbone.sections;
        var subsections = state.aBMudbone.subSections;

        var combinedSections = [];

        _.forEach(sections, function (section) {
            var subSectionsFiltered = _.filter(subsections, ['sectionId', section.sectionId]);
            var sectionAndSubSections = section;
            sectionAndSubSections.children = subSectionsFiltered;
            combinedSections.push(sectionAndSubSections);
        });

       return combinedSections
    }

В консоли я получаю следующую ошибку:

[vuex] do not mutate vuex store state outside mutation handlers.

Строка, в которой отображается эта ошибка:

sectionAndSubSections.children = subSectionsFiltered;

Насколько я понимаю, несмотря на то, что sections, subSections и sectionAndSubSections являются новыми объектами, поскольку они создаются из состояния хранилища, они подлежат некоторой привязке, отсюда и предупреждение при попытке добавить в это состояние.

Как я могу отключить это новое состояние от состояния магазина, чтобы я не получил это предупреждение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...