ember服务类提供的功能比utils等其他构造型有什么好处?我认为这与DI有关,但我无法完全理解它。
答案 0 :(得分:2)
主要优点是您可以使用Ember.inject.service()
。
例如,如果您有user
服务,则可以执行以下操作:
// app/components/user.js
export default Ember.Component.extend({
userService: Ember.inject.service('user'),
displayName: Ember.computed('userService.model.{firstName,lastName}', function(){
return [
this.get('userService.model.firstName'),
this.get('userService.model.lastName')
].compact().join(' ');
}),
avatarUrl: Ember.computed.readOnly('userService.model.avatarUrl'),
});