- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试测试以下示例 Ember.js 代码,但 Chrome 浏览器控制台中总是显示以下错误:
Uncaught TypeError: Property '_super' of object [object Object] is not a function
代码:
MovieTracker.moviesController = Ember.ArrayController.create({
content: [],
init: function(){
this._super();
var list = [
MovieTracker.Movie.create({
title: 'Movie 1',
rating: 4 }),
MovieTracker.Movie.create({
title: 'Movie 2',
rating: 5
})];
this.set('content', list);
}
});
我正在使用 Ember-1.3.2.js
有人可以告诉我我在这里缺少什么吗?以及如何解决这个错误?
按照@kingpin2k的建议将.create更改为.extend后出现新错误消息
TypeError: Object function () { if (!wasApplied) { Class.proto(); // prepare prototype... } o_defineProperty(this, GUID_KEY, undefinedDescriptor); o_defineProperty(this, '_super', undefinedDescriptor); var m = meta(this), proto = m.proto; m.proto = this; if (initMixins) { // capture locally so we can clear the closed over variable var mixins = initMixins; initMixins = null; this.reopen.apply(this, mixins); } if (initProperties) { // capture locally so we can clear the closed over variable var props = initProperties; initProperties = null; var concatenatedProperties = this.concatenatedProperties; for (var i = 0, l = props.length; i < l; i++) { var properties = props[i]; Ember.assert("Ember.Object.create no longer supports mixing in other definitions, use createWithMixins instead.", !(properties instanceof Ember.Mixin)); if (typeof properties !== 'object' && properties !== undefined) { throw new Ember.Error("Ember.Object.create only accepts objects."); } if (!properties) { continue; } var keyNames = Ember.keys(properties); for (var j = 0, ll = keyNames.length; j < ll; j++) { var keyName = keyNames[j]; if (!properties.hasOwnProperty(keyName)) { continue; } var value = properties[keyName], IS_BINDING = Ember.IS_BINDING; if (IS_BINDING.test(keyName)) { var bindings = m.bindings; if (!bindings) { bindings = m.bindings = {}; } else if (!m.hasOwnProperty('bindings')) { bindings = m.bindings = o_create(m.bindings); } bindings[keyName] = value; } var desc = m.descs[keyName]; Ember.assert("Ember.Object.create no longer supports defining computed properties.", !(value instanceof Ember.ComputedProperty)); Ember.assert("Ember.Object.create no longer supports defining methods that call _super.", !(typeof value === 'function' && value.toString().indexOf('._super') !== -1)); Ember.assert("
actions
must be provided at extend time, not at create " + "time, when Ember.ActionHandler is used (i.e. views, " + "controllers & routes).", !((keyName === 'actions') && Ember.ActionHandler.detect(this))); if (concatenatedProperties && indexOf(concatenatedProperties, keyName) >= 0) { var baseValue = this[keyName]; if (baseValue) { if ('function' === typeof baseValue.concat) { value = baseValue.concat(value); } else { value = Ember.makeArray(baseValue).concat(value); } } else { value = Ember.makeArray(value); } } if (desc) { desc.set(this, keyName, value); } else { if (typeof this.setUnknownProperty === 'function' && !(keyName in this)) { this.setUnknownProperty(keyName, value); } else if (MANDATORY_SETTER) { Ember.defineProperty(this, keyName, null, value); // setup mandatory setter } else { this[keyName] = value; } } } } } finishPartial(this, m); this.init.apply(this, arguments); m.proto = proto; finishChains(this); sendEvent(this, "init"); } has no method 'get'
最佳答案
我遇到了同样的问题,因为我也在关注同一本书,终于弄清楚为什么这在 Ember 1.5.1 上不起作用:
所以下面的代码应该适合任何感兴趣的人......
MovieTracker.MoviesController = Ember.ArrayController.extend({
content: [],
init: function() {
var list = [
MovieTracker.Movie.create({
title: 'Movie 1',
rating: 4
}),
MovieTracker.Movie.create({
title: 'Movie 2',
rating: 5
})];
this.set('content', list);
}});
关于javascript - Ember.js ArrayController 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21804459/
我在添加一个数组 Controller 作为另一个数组 Controller 的项目 Controller 时遇到问题。 我得到的错误是: Error while loading route: Typ
我在 ember.js 中遇到以下问题。子 Controller 取决于父 Controller 中的选定值以确定其内容。在数据库中,一个 child 有一个 parent_id 引用。 App.pa
我有一个 EmailsController (ArrayController),它存储所有的电子邮件。我有一个 EmailController (ObjectController),它有一个参数,用于
我在保持我的数组与模板完全同步时遇到了一些问题,ArrayController 正在关注被推送、删除和更新的对象。然而,ArrayController 正在过滤结果,当其中一个对象发生变化并且它的新属
我有一个起始页面,要求用户输入 apiKey。通过该表单数据,我将其传递到我的 deals 路由,然后该路由根据输入的 apiKey 获取相关数据。 我的问题是,当我直接使用 URI 中的 apiKe
我有一个加载多个模型的 Route: App.AppRoute = Ember.Route.extend({ model: function() { return Ember.RSVP.h
我有一个 ember.js 模型和 Controller 设置,如下所示: //model App.Order = Ember.Object.extend({ content: null, c
如何在 Ember.js 1.0pre 中使用 ArrayController? 来自文档: MyApp.listController = Ember.ArrayController.create()
我正在尝试重定向到 ArrayController 中的第一项。我发现了一些与此相关的其他问题,但没有一个似乎有效的答案(发生了很多变化,所以这是可以理解的)。 Yehuda 的一个特别回答 here
我有以下 jsbin:http://jsbin.com/okoxim/4/edit FilteredContent 是一个计算属性,用于过滤我的 Controller 的内容。我想知道如何对计算属性进
我有一个绑定(bind)到 TableView 的数组 Controller 。我需要返回表中选中的复选框的数量。 arraycontroller 充满了 nsmutabledictionaries。
现在看看 ArrayController,我发现了两种实现它们的方法: http://awardwinningfjords.com/2011/12/27/emberjs-collections.htm
我有一个管理一组对象的 ArrayController。我在上面定义了一个 itemController,这样每个单独的对象都由另一个 ObjectController 管理: App.IndexCo
在 Ember.ArrayController 中,我有一个函数 .observes()用于属性更改的整个模型数组的属性。 var FoosController = Ember.ArrayContro
我正在寻找一种方法来清除 ArrayController,但在 sortProperties 时出现错误: App.SwatchesController = Ember.ArrayController
我无法用我目前正在做的事情获取一个奖项集合,我在获取这个集合时做错了什么? 我不断收到以下错误: 错误:处理路由时出错:奖励断言失败:ArrayController 期望 model 实现 Ember
我需要调用 ItemController 中的函数/或从 ArrayController 设置子 ItemController 的新属性。 为了更好的画面 App.ProductsController
我正在尝试测试以下示例 Ember.js 代码,但 Chrome 浏览器控制台中总是显示以下错误: Uncaught TypeError: Property '_super' of object [o
我正在使用一个简单的 Ember.ArrayController在具有 ember-data 的应用程序中(最新), ember rc6和一个库存 REST Controller 。 我在数组 Con
我有一个模型,如: TestModel = Em.Object.create({ id:'', name:'' }) 和一个对象数组 Controller ,如: testArrayC
我是一名优秀的程序员,十分优秀!