0

私は emberjs を学ぼうとしていて、計算されたプロパティ セクションの例でエラーに遭遇しました (www.emberjs.com、「ガイド」セクションの「動作中の計算されたプロパティ」の例)。ブラウザーのコンソールから呼び出すと、常に「オブジェクト [オブジェクト オブジェクト] のプロパティ 'fullName' は関数ではありません」というエラーが表示されますironMan.fullName()- なぜですか?

私のコードは次のとおりです。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/handlebars.js/1.0.0-rc.3/handlebars.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/ember.js/1.0.0-rc.6/ember.min.js"></script>
<script>
App = Ember.Application.create();

App.Person = Ember.Object.extend({
  // these will be supplied by `create`
  firstName: null,
  lastName: null,

  fullName: function() {
    return this.get('firstName') + ' ' + this.get('lastName');
  }.property('firstName', 'lastName')
});

var ironMan = App.Person.create({
  firstName: "Tony",
  lastName:  "Stark"
});
</script>

また、jsbin で: http://jsbin.com/UnevOVU/3/edit

4

1 に答える 1

1

このエラーはironMan.fullName、 は関数ではなく、 で呼び出すことができないことを示してい()ます。これはfullName、関数ではなく、計算されたプロパティ オブジェクトであるためです。ガイドのこのコード サンプルのすぐ下に示されているコードを使用して、その値にアクセスできます。

ironMan.get('fullName') // "Tony Stark"

于 2013-09-28T16:07:37.257 に答える