Я недавно скачал последнюю версию moment.js и начинает показывать следующее сообщение при попытке вызвать, например, moment().add(1, 'day');
Moment.js - «Доступ к Moment через глобальную область видимости» предупреждающее сообщение
"Deprecation warning: Accessing Moment through the global scope is deprecated, and will be removed in an upcoming release."
Каков наилучший способ вызова моментов?
Update: Разобрался проблему
проблема присутствовала, потому что я requirejs в моем проекте и momentjs пытался предупредить меня, что я должен использовать momentjs в качестве модуля зависимости вместо этого.
Следующий код был извлечен из momentjs v2.9.0
// CommonJS module is defined
if (hasModule) {
module.exports = moment;
} else if (typeof define === 'function' && define.amd) {
define('moment', function (require, exports, module) {
if (module.config && module.config() && module.config().noGlobal === true) {
// release the global variable
globalScope.moment = oldGlobalMoment;
}
return moment;
});
makeGlobal(true);
} else {
makeGlobal();
}
//And this is the 'makeGlobal' function. globalScope
function makeGlobal(shouldDeprecate) {
/*global ender:false */
if (typeof ender !== 'undefined') {
return;
}
oldGlobalMoment = globalScope.moment;
if (shouldDeprecate) {
globalScope.moment = deprecate(
'Accessing Moment through the global scope is ' +
'deprecated, and will be removed in an upcoming ' +
'release.',
moment);
} else {
globalScope.moment = moment;
}
}
Так что, если я использую эту библиотеку в среде CommonJS, то следует использовать оператор импорта.
Если я использую requirejs, тогда я должен включать momentjs в качестве зависимости от моих модулей.
Наконец, если ни в других случаях выполнения, то я могу использовать его непосредственно из глобальной области видимости (объект окна в браузере)
И это в сценарии клиентов? – adeneo
Если вы не используете requireJs, последнее, что я видел, было то, что это была проблема, re: https://github.com/moment/moment/issues/1214. Возможно, это было разрешено мастером, но я не знаю. –
Кажется, что вы используете момент для nodeJS ... вы можете дважды проверить и получить версию моментальной сборки для браузера. –