如果我按照文档
在coffeescript中有一个ember对象Person = Ember.Object.extend
name: null
lastName: null
fullName: Ember.computed ->
return 'hello'
.property('name', 'lastName')
person = Person.create
name: 'Tom'
lastName: 'Tim'
使用person.get('fullName')
返回一个ember对象而不是fullname
m =>
_cacheable: true
_dependentKeys: Array[1]
0: "ownerships"
length: 1
__proto__: Array[0]
func: function () {
__proto__: Ember.Descriptor
因此(我假设),我看到[object Object]
而不是fullName
<script type="text/x-handlebars" data-template-name="personView">
{{#with App.peopleController.person}}
<dt>First name</dt>
<dd>{{name}}</dd>
<dt>Fullname</dt>
<dd>{{fullName}}</dd>
{{/with}}
</script>
这呈现:
First name
[object Object]
答案 0 :(得分:1)
指向coffeescript给了我一个提示:尝试像这样定义fullName:
fullName: (->
return "hello"
).property('firstName', 'lastName')
我认为在您的示例中,返回的值是函数本身,而不是值。
修改强> 的
我尝试使用以下代码在javascript中翻译您的代码:http://tinyurl.com/9mh2eho
然后,粘贴一个jsfiddle:
http://jsfiddle.net/Sly7/ksRkd/
这两个版本似乎都有效......也许错误在其他地方。