0

Ember/Handlebarsビューに不思議な問題があります。ハンドルバービューで非常に単純なデータバインディングを実装しようとしています。これは、次のようにしてビューをレンダリングするときに正しく機能します。

Ember.Views.NavView.create().append()

しかし、{{view}}ヘルパーを使用して同じビューの別のインスタンスをレンダリングしようとすると、バインドされた属性が表示されません。

<script type="text/x-handlebars">
    {{view App.Views.NavView}}
</script>

最初のケースでは、属性(このテストケースのビューにハードコードされています)が正しく表示されます。2番目のケースでは、「metamorph-0-start」タグと「metamorph-0-end」タグを取得しますが、値自体はレンダリングされません。

問題を明確に示すJSFiddle( http://jsfiddle.net/XUyht/2/ )を設定しました。

ビューを2回レンダリングしたことがわかります。1つ目は{{view}}ヘルパーを使用し、2つ目はappend()を使用していますが、属性「working」は後者の場合にのみ表示されます。

何が起きてる?

4

1 に答える 1

2

この種のテンプレートの実装が必要な理由はわかりませんが、とにかく、1.0-pre 以降、ビューのデフォルト コンテキストはそのコントローラーか、その親ビューのいずれかです。したがって、あなたの場合、に置き換えるtmp.fooview.tmp.foo、これは機能します。

http://jsfiddle.net/Sly7/amLfk/を参照してください

于 2012-08-22T09:11:15.290 に答える