2

ハンドルバーテンプレートのネストされたモデルプロパティにアクセスするという奇妙な問題に直面しています。
私のJSONフィードは次のようになります。

{
"hic": {
    "id": "1",
    "tree": {
        "id": "1",
        "folder": [
            {name: "test1"},
            {name: "test2"}
        ]
    ...
    }
}
}

次のハンドルバーテンプレートを使用してフォルダオブジェクトを表示しようとすると、次のようになります。

<ul>
    {{#with tree}}
        {{#each folder}}
            <li>{{name}}</li>
        {{/each}}
    {{/with}}
</ul>

エラーが発生します: Uncaught TypeError:undefinedのメソッド'hasOwnProperty'を呼び出すことはできません。

この回避策は、望ましい結果をもたらします。

<ul>
    {{#with tree.data.hasMany}}
        {{#each folder}}
            <li>{{name}}</li>
        {{/each}}
    {{/with}}
</ul>

これはember-dataの問題ですか、それとも何か間違ったことをしていますか?

注:jsfiddleで問題を再現できませんでした。createRecord()を使用してHicモデルを作成すると、すべてが期待どおりに機能します。

json-feedはここにあります。それが私のapp.jsです。完全なnode.js-projectを提供することもできます。

4

1 に答える 1

3

根本的な原因は、埋め込まれたbelongsTo-relationshipのようです。このプルリクエストにより、この問題が修正されます。埋め込みbelongsToレコードを適切に抽出します。サンドストロームに感謝します!

于 2013-01-18T14:16:03.633 に答える