Ember 2.0升级告诉我没有

时间:2016-02-20 04:58:32

标签: ember.js

当我将ember更新为2.0.0时,现在正在抱怨以下View。问题是我的代码中没有应用程序路径的view.js文件。我该如何解决这个问题?

define('my-app/views/application', ['exports', 'ember'], function (exports, Ember) {

    'use strict';

    exports['default'] = Ember['default'].View.extend({});

});

堆栈跟踪:

  

未捕获的TypeError:无法读取属性'extend'   undefined(匿名函数)@ application.js:5mod.state @   loader.js:141tryFinally @ loader.js:22requireModule @   loader.js:139Ember.DefaultResolver.extend._extractDefaultExport @   ember-resolver.js:390resolveOther @ ember-resolver.js:122superWrapper   @   ember.debug.js:21068exports.default._emberRuntimeSystemObject.default.extend.resolveView   @   ember.debug.js:4891exports.default._emberRuntimeSystemObject.default.extend.resolve   @ ember.debug.js:4749resolve @ ember.debug.js:4486resolve @   ember.debug.js:2152Registry.resolve @ ember.debug.js:1720factoryFor @   ember.debug.js:1370Container.lookupFactory @   ember.debug.js:1285initialize @ key-responder.js:36(匿名   函数)@ ember.debug.js:4168(匿名函数)@   ember.debug.js:4184visit @ ember.debug.js:2194DAG.topsort @   ember.debug.js:2305_emberRuntimeSystemNamespace.default.extend._runInitializer   @   ember.debug.js:4183_emberRuntimeSystemNamespace.default.extend.runInstanceInitializers   @   ember.debug.js:4166_emberRuntimeSystemNamespace.default.extend.didBecomeReady   @ ember.debug.js:4198Queue.invoke @ ember.debug.js:978Queue.flush @   ember.debug.js:1042DeferredActionQueues.flush @   ember.debug.js:838Backburner.end @ ember.debug.js:166Backburner.run @   ember.debug.js:288Backburner.join @ ember.debug.js:323run.join @   ember.debug.js:19078(匿名函数)@ ember.debug.js:19141fire @   jquery.js:3099self.fireWith @jquery.js:3211jQuery.extend.ready @   jquery.js:3417completed @ jquery.js:3433

更新

非常奇怪,我添加了一个包含以下内容的pods/application/view.js文件。

import Ember from 'ember';
export default Ember.Component.extend();

现在的ember似乎正在使用它而不是为我创建Ember.View

1 个答案:

答案 0 :(得分:0)

编译后的输出看起来像app/views/application.js中的文件包含:

import Ember from 'ember';

export default Ember.View.extend({});

您的广告连播视图/组件变通方法会覆盖此文件,但Ember 2.x应用中不应出现这种情况(除非您使用的是ember-legacy-views)。最好的解决方案是删除这两个文件。