如何在 ember 中创建枚举服务
How to create an enums service in ember
我想在 ember 中创建一个枚举服务,这样我只需要注入它就可以在任何地方使用它。有什么好办法吗?
谢谢
哦,我找到了解决办法。
我做对了,但 ember 发球不是那么聪明..
步骤:
- 只需使用:ember g 服务枚举
- 并添加一个初始化器:ember g initializer enums
- 在新创建的枚举初始化器中,放入
export default {
name: 'titleService',
initialize: function(application) {
application.inject('route', 'enums', 'service:enums');
}
};
- 重新启动 ember 服务器,您将获得枚举服务
我认为这也可行,在您的服务代码中添加 Enumerable mixin
export default Ember.Service.extend(Ember.Enumerable, {
length: // ...
nextOjbect: // ..
next: // ...
value: // ...
}
根据文档,您需要实现 nextObject() 和 length。 Ember 服务只是 Ember 对象,所以我认为这是更简洁的解决方案
http://emberjs.com/api/classes/Ember.Enumerable.html#toc_writing-your-own-enumerable
如果这对你有用,请告诉我....
我想在 ember 中创建一个枚举服务,这样我只需要注入它就可以在任何地方使用它。有什么好办法吗? 谢谢
哦,我找到了解决办法。 我做对了,但 ember 发球不是那么聪明..
步骤:
- 只需使用:ember g 服务枚举
- 并添加一个初始化器:ember g initializer enums
- 在新创建的枚举初始化器中,放入
export default { name: 'titleService', initialize: function(application) { application.inject('route', 'enums', 'service:enums'); } };
- 重新启动 ember 服务器,您将获得枚举服务
我认为这也可行,在您的服务代码中添加 Enumerable mixin
export default Ember.Service.extend(Ember.Enumerable, {
length: // ...
nextOjbect: // ..
next: // ...
value: // ...
}
根据文档,您需要实现 nextObject() 和 length。 Ember 服务只是 Ember 对象,所以我认为这是更简洁的解决方案
http://emberjs.com/api/classes/Ember.Enumerable.html#toc_writing-your-own-enumerable
如果这对你有用,请告诉我....