У меня это произошло в Chrome и IE...
Если я нажму ссылку, чтобы перейти от страницы, в то время как requirejs по-прежнему загружается или получает скрипты, я получаю случайные ошибки. Извините, если это неопределенно...
Например, в самом require.js, я получил ошибку сегодня:
Unable to get value of the property 'normalize': object is null or undefined
В следующем блоке:
//If current map is not normalized, wait for that
//normalized name to load instead of continuing.
if (this.map.unnormalized) {
//Normalize the ID if the plugin allows it.
if (plugin.normalize) {
name = plugin.normalize(name, function (name) {
return normalize(name, parentName, true);
}) || '';
}
//prefix and name should already be normalized, no need
//for applying map config again either.
normalizedMap = makeModuleMap(map.prefix + '!' + name,
Я получил другие ошибки в своих определенных js файлах, где они начинают выполнять код до полной загрузки зависимостей. У меня возникает ощущение, что когда браузеру предлагается перейти от текущей страницы, он останавливает все вызовы ajax и таким образом усекает некоторые из js.
Есть ли способ предотвратить подобные ошибки?
Избегайте запуска кода в области функции define
. Запустите свою логику приложения, как только все загрузится, написав код в функциях, которые выполняются, когда ваша страница готова.
Также, что вы подразумеваете под навигацией? Если вы перемещаетесь, страница уходит, а также ее ошибки. Эта навигация в стиле pushAPI с загруженным приложением или полной и полной навигацией браузера?
define('exampleScript', ['ko', 'jquery', 'lodash', 'moment'], function(ko, $, _, moment) { var observableLocalTime = ko.observable(moment()); $('body').append(observableLocalTime); });