0
A
回答
0
没有什么特别的,你需要在奥德为“扩展”添加到灰烬。您最想做的事情是引入新的Controllers and Views
。为了做到这一点,你只需要继承Ember的核心类。 Here就是这样一个“扩展”的例子,它提供了可重复使用并提供很多价值的视图。
3
Ember.js内置了很多扩展功能,因为许多类都可以扩展,这是构建自己的控制器,路由和模型的标准方式;现有类和现有实例都可以“重新打开”。 [最好是专门问一下你想达到什么样的目的,以获得更具体的答案,然后去做一个更好的方法。]
另外,如果你想有一个全新的类来定义你的控制器的行为或者路由需要访问,那么就有一种机制可以将新类的实例注入到它们中,而实例不是全局变量。基于从http://livsey.org/blog/2013/02/10/integrating-pusher-with-ember/的代码,你可以通过定义类:
Ember.MyNewPlugin = Ember.Object.extend({
init: function() {
// Anything you need to do to initialise the object
},
myFunc: function(param) {
// Anything you need to do with with "param"
}
});
然后注入实例到由控制器和路线:
Ember.Application.initializer({
name: "mynewplugin",
initialize: function(container, application) {
// use the same instance everywhere in the app
container.optionsForType('mynewplugin', { singleton: true });
// register 'mynewplugin:main' as our MyNewPlugin object
container.register('mynewplugin', 'main', Ember.MyNewPlugin);
// inject the MyNewPlugin object into all controllers and routes
container.typeInjection('controller', 'mynewplugin', 'mynewplugin:main');
container.typeInjection('route', 'mynewplugin', 'mynewplugin:main');
}
});
然后在控制器和路线,你可以通过访问实例
var myNewPlugin = this.get('mynewplugin');
并通过调用它的函数:
myNewPlugin("Some data");
相关问题
- 1. Emberjs回去取消
- 2. Emberjs
- 3. Emberjs - 如何从另一个控制器”
- 4. 如何使用EmberJS
- 5. Emberjs - 如何在RC1
- 6. 我如何创建动态手风琴组件EmberJS
- 7. 如何在emberjs中为模态框创建组件?
- 8. 如何使jquery插件与emberJS一起使用?
- 9. Emberjs在保存后创建新模型
- 10. 在EmberJS中创建一个初始化脚本
- 11. 在emberjs模板中的jquery插件
- 12. Sahrethis emberJs
- 13. EmberJS attributeBinding
- 14. EmberJS如何构建一个动态过滤
- 15. 如何构建一个EmberJS应用程序与REST后端
- 16. Emberjs:触发HTML5上的Emberjs事件音频“已结束”事件
- 17. emberjs如何禁用Ember.Select?
- 18. 如何使用车把(EmberJS)
- 19. emberjs如何添加外部JS文件
- 20. 如何查询emberjs中的JSON文件
- 21. 如何在emberjs中做这个模板?
- 22. 如何在emberJs中创建选择并向其添加数据
- 23. 如何用hasMany和belongsTo关联创建记录? [EmberJS]
- 24. 测试与emberjs
- 25. EmberJS,Helpers and ComputedProperty
- 26. Emberjs Complex Routing
- 27. 产生emberJS
- 28. 混淆在emberjs
- 29. Emberjs rootElement的
- 30. Yeoman + EmberJS + Phonegap