我有一个base
- 路由封装了我的应用程序中的所有其他路由。
我希望通过this.store.find('category')
在我的应用程序中随处可用来从商店检索的类别。
我尝试使用以下代码在基本控制器中检索它:
import Ember from 'ember';
export default Ember.ArrayController.extend({
// retrieve all categories as they are needed in several places
categories: function() {
return this.get('store').find('category');
}
});
通过以下方式从子控制器创建别名:
categories: Ember.computed.alias('controllers.base.categories')
但它提供了此错误消息:
未捕获错误:断言失败:#each循环的值必须是数组。你传递了函数(){ 返回this.get(' store')。find(' category'); }
如何解决我的问题?
答案 0 :(得分:2)
使其成为计算属性。
categories: function() {
return this.get('store').find('category');
}.property()
控制器在2.0中已被弃用,因此我将研究使用服务架构而不是基本控制器架构。