Как улучшить производительность этой функции Knockout.js - PullRequest
0 голосов
/ 14 февраля 2019

Я новичок в Knockout.js.Я смотрю на проблему, о которой сообщает клиент.Браузер перестает отвечать, когда пользователь выполняет операцию добавления элемента в список, который отображается для пользователя в модальном окне.Пожалуйста, не стесняйтесь задавать столько вопросов, сколько вы хотите, чтобы я также мог учиться и понимать нокаут.

        function _cloneWithSeq (list) {
            return _.map(ko.unwrap(list), function (item) {
                var cloneItem = _.clone(item);
                cloneItem.seq = ko.observable(ko.unwrap(item.seq));
                return cloneItem;
            });
        }

Вышеуказанная функция вызывается из строки ниже:

targetCM.setMaps(ko.unwrap(editingCM.outcomeMaps), _cloneWithSeq(ko.unwrap(editingCM.courses)));

Я не уверен, как отлаживать этот код.Я также не знаком с обходом кода.Пожалуйста, направьте меня к любому документу #HOWTO онлайн, к которому я могу обратиться.

Различное поведение в браузере FF и Chrome:

  • В Chrome вкладка браузера перестает отвечать на запросыи нужно принудительно закрыть вкладку.операция не удалась
  • Где, как и в FF, выполнение вышеуказанной строки занимает 2 минуты, и операция прошла успешно.FF предупреждает пару раз за эти 2 минуты: «Веб-страница тормозит ваш браузер. Хотите ли вы это делать? ОСТАНОВИТЕ ЭТО или ПОДОЖДИТЕ.

Заранее спасибо.

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