灰烬注入功能

时间:2017-01-30 19:12:29

标签: ember.js

我有一些功能,我在几个控制器中使用

 App.AController=Ember.Controller.Extend({
    area:function(){}
});
App.BController=Ember.Controller.Extend({
    area:function(){}
});

因为我是Ember的新手,我想在一个地方编写函数,然后在Controllers中注入函数。我尝试使用服务但不起作用我得到Ember.Service未定义的错误,所以如果有人可以写例子! 我使用的是ember 1.10。

1 个答案:

答案 0 :(得分:0)

如果您使用ember-cli,只需创建一个文件app/utils/area.js

export default function () {...};

然后您可以导入并使用它:

import area from 'myapp/utils/area`;
import Ember from 'ember';

export default Ember.Controller.extend({
  area,
});

但是,如果您未使用ember-cli,则此问题并非特定于具体内容。那么这取决于你如何组织代码。但你真的应该看看ember-cli

但永远记住,这只是javascript。这是有效的代码:

function area() {
    ...
}

App.AController=Ember.Controller.Extend({
    area
});
App.BController=Ember.Controller.Extend({
    area
});