0

リンクしたEmberSnippetが機能しないのはなぜですか?単純なArrayControllerをセットアップし、初期化時にコンテンツを入力します。次に、{{#each}}を使用してこのコントローラーの内容を表示したいのですが、これは機能していません。

私が読んだチュートリアルでは、次の構造が常に使用されています。

{{#each  AppNamespace.myModelController}}
...
{{each}}

しかし、私の例を機能させるために、私は使用しなければなりませんでした:

{{#each  AppNamespace.myModelController.content}}
...
{{/each}}

提供されているフィドルを見て、何が問題なのか教えていただけますか?チュートリアルでこのパターンを頻繁に見たので、私は何か間違ったことをしたに違いないと思います。

注:私はJavaServerDevelopmentのJavascript初心者です。ですから、私が苦労しているJSの基本は簡単かもしれません。

ここに完全なコードを投稿したはずですが、フォーマットが正しく機能していませんでした。

私の問題を示す私のJSフィドルへのリンク

4

4 に答える 4

3

this._super()init メソッド内に呼び出しを追加します。

https://github.com/emberjs/ember.js/pull/1251

また、あなたの質問とは直接関係ありませんが、ここで #6 を読むことで利益が得られるようです: http://codebrief.com/2012/03/eight-ember-dot-js-gotchas-with-workarounds/

于 2012-10-15T20:42:34.460 に答える
1

1.0の代わりにhttp://cloud.github.com/downloads/emberjs/ember.js/ember-0.9.6.min.jsでフィドルを試してみましたが、どちらの場合も正常に機能しています。

于 2012-10-15T19:41:47.430 に答える
1

私は自分自身で Ember を調べ始めていますが、あなたが使用しているプロセスが気になります。

私の知る限り、そのようなコントローラーから直接データを取得するべきではありません。使用するパターンは、モデル、コントローラー、ビュー、およびルーターに基づいている必要があります。

http://trek.github.com/は、Ember について学ぶときに役立つリソースです。

その例に基づいて、これは小さな ember テスト アプリケーションに対する私の見解です。

http://jsfiddle.net/zDfBv/

うまくいけば、それが出発点としてあなたに役立つでしょう。

于 2012-10-15T22:26:30.767 に答える
0

#each ヘルパーに 1 つの引数を渡す場合、Ember.Array 互換オブジェクトである必要があります。最初の例では、データがコンテンツ プロパティにあるときにコントローラーを渡します。2 番目の例は、コンテンツ プロパティを渡すため機能します。 .. 気が向いたら、そのようにしても問題ありません。

ただし、より頻繁に目にする #each ヘルパーの代替構文があり、要素の命名{{#each model in myModelController}}...を使用します{{/each}}。このようにすると、コンテンツ プロパティがビューのデフォルトのレンダリング コンテキストであるため、Ember が自動的に content プロパティを探します。

Github の最新バージョンを使用していると仮定すると、どちらの場合もコンテンツの検索が処理されるため、安定版としてリリースされると問題が解決しないことがわかります。

于 2012-10-15T23:01:54.910 に答える