EmberJS访问Ember.Controller中的Ember.Object

时间:2016-12-24 01:18:26

标签: ember.js

我的目的是在Object中分离很多样板代码,但我知道如何在Controller中访问这个对象。

代码看起来像这样。

import Ember from 'ember';
"use strict";

var panel = Ember.Object.extend({

});
const Person = Ember.Object.extend({
    init() {
        this.set('shoppingList', ['eggs', 'cheese']);
    }
});


export default Ember.Controller.extend({
    width: 0,
    height: 0,
    panel: null,

1 个答案:

答案 0 :(得分:1)

您可以为Person类创建对象并将其分配给控制器属性。

直接在任何Ember.Object上定义的数组和对象在该对象的所有实例之间共享。创建新实例时,将自动调用其init()方法。这是实现新实例所需设置的理想位置。 reference

const Panel = Ember.Object.extend({

});
const Person = Ember.Object.extend({
    init() {
        this._super(...arguments);
        this.set('shoppingList', ['eggs', 'cheese']); 
    }
});
export default Ember.Controller.extend({
    width: 0,
    height: 0,
    panel: Panel.create(),
    init(){
       this._super(...arguments);
       this.set('person',Person.create());