Ember.js 我可以从注入服务获得计算属性吗?

Ember.js 我可以从注入服务获得计算属性吗?,ember.js,ember-cli,Ember.js,Ember Cli,我的应用程序路由中当前注入的服务中有一个isAuthenticated属性,如何从路由中注入的服务中获得计算属性 export default Ember.Route.extend({ session : Ember.inject.service('market-session'), isUser : Ember.computed.oneWay('session.IsAuthenticated'), } 这可能吗?在模板中似乎没有得到值 在模板内部- {{#if isUser}

我的应用程序路由中当前注入的服务中有一个isAuthenticated属性,如何从路由中注入的服务中获得计算属性

export default Ember.Route.extend({
    session : Ember.inject.service('market-session'),
    isUser : Ember.computed.oneWay('session.IsAuthenticated'),
}
这可能吗?在模板中似乎没有得到值

在模板内部-

{{#if isUser}}
   User is authenticated
{{else}}
   User log in form
{{/if}}

此计算属性仅在我将其移动到控制器时有效,它应该在路由和控制器中都有效,对吗?我在这里遗漏了什么吗?

一旦注入了服务,您就可以按照上面显示的方式访问服务上的计算属性。从余烬文档:

创建一个属性,该属性在容器中惰性地查找服务。对于服务可以注入哪些对象没有限制


您可以像预期的那样访问服务对象上的计算属性和调用函数。

这似乎可行,但如果我尝试使用此值在模板中执行某些操作,它似乎总是未定义/错误。无论如何,如果我从控制器执行此操作,它将在模板中工作,但为什么这种行为不应该在两种方式下都工作?模板无法访问路由上的属性。