ember.js - 升级 Ember 时出现未知的全局错误
问题描述
将 Ember 2.11 升级到 2.18 时,我遇到了很多未知的全局错误:
- Ember.Inflector
全球未知:Ember.Inflector 位置:app\routes\base-mt.js 第 17 行
i18n: Ember.inject.service(),
searchFilter: Ember.inject.service('search-filter'),
inflector: new Ember.Inflector(Ember.Inflector.defaultRules),
init: function () {
this._super();
- Ember.testing
全球未知:Ember.testing 位置:app\routes\base.js 第 30 行
//Don't attempt route reloading if testing
if(!Ember.testing) {
this.cleanMemory(routeName);
}
- Ember.MODEL_FACTORY_INJECTIONS
全球未知:Ember.MODEL_FACTORY_INJECTIONS 位置:app\app.js 位于第 10 行
var ComposerOverrides = window.ComposerOverrides || {};
Ember.MODEL_FACTORY_INJECTIONS = true;
Ember.TextField.reopen({
Ember.生产
全球未知:Ember.production 位置:app\router.js 在第 1937 行
});
if(!Ember.production) {
- Ember.onerror
Unknown Global Global:Ember.onerror 位置:app\application\route.js 在第 48 行
let route = this;
if(Ember.production) {
Ember.onerror = function (error) {
route.router.send('error', error);
};
- Ember.Logger
全球未知:Ember.Logger 位置:app\application\route.js 第 167 行
if (error error.message){
if(!Ember.production) {
Ember.Logger.error(error.message);
}
let errorModel = Ember.Object.create();
- Ember.Handlebars
全球未知:Ember.Handlebars 位置:app\helpers\add-new-line.js 在第 5 行
export function addNewLine(value) { var breakTag = ‘ ’;
let str = Ember.Handlebars.Utils.escapeExpression(value);
- Ember.String
全球未知:Ember.String 位置:app\services\jsonschema-validation.js 第 14 行
// supports, will do for the moment.
if (!model.includes('-w-')) {
model = Ember.String.pluralize(model);
解决方案
你使用了 ember-cli-update 吗?有一个 codemod 可以让你切换到新的模块语法
npm install -g ember-cli-update
ember-cli-update --to 2.18
ember-cli-update --run-codemods
# ember-modules-codemod is the one that updates the imports
推荐阅读
- flutter - Dart Null-Safety - Range Error when executing dart migrate to upgrade to new null safety
- html - html 5音频标签较低的宽度不会在chrome中显示播放按钮
- python - ValueError...“Contestant.contest”必须是“Contest”实例
- python - 无法使用 webbrowser 模块关闭浏览器
- firebase - 从 uid 列表中获取用户数据 - Flutter
- logstash - 如何以这种方式配置logstash?
- mysql - 如果不在列表中,SQL 查询返回零
- c++ - 我必须删除指向 FLTK 中小部件的指针吗?
- node.js - 如何更有效地在可视化代码中调试 Nodejs 6.x
- java - 你可以重写子类中的超类方法什么都不做吗?