Emberの新しい機能ここにあります。私はアクションを実行する方法を理解しようとしており、そのアクションの製品は#with
ヘルパーによって使用されます。以下は、私のコードの例を次に示します。with with helper内でアクションを実行
{{#navigation-container as |navigationContainer|}} {{#with (action navigationContainer.previousPage model) as |prev|}} {{link-to (t 'navigation.previous') (concat 'course-run.' prev.modelName) prev activeClass="o25" title=prev.title}} {{/with}} {{/navigation-container}}
navigation-container
はpreviousPage
そのうちの1つは、いくつかのアクションを、公開するコンポーネントです。 previousPage
は、私がいくつかのリンクを作成し、ember-keyboardで使用するモデルを返します。
prev
が定義されていないため、link-to
がルートを構築できないというエラーが表示されます。アクションは実行中で、このブロックのすぐ上に正しく戻っています。したがって、ブロックwith
が問題であると仮定しています。
ありがとうございました!
次の '{{#with(action navigationContainer.previousPage model)as prev |}}'コードスニペットでアクションを作成しても問題ありません。 'prev.modelName'はどういう意味ですか? 'prev'自体は関数であり、' modelName'というプロパティは含まれていません。アクションはこの宣言を持つテンプレートでは単独では実行されません。それをコンポーネントに渡してjsファイル内で実行する必要があります。あなたが達成しようとしていることは、私が理解していることが正しいなら、不可能ではないにしても混乱しています。あなたが達成しようとしていることを教えてください。テンプレート内またはsth内でアクションを実行しようとしていますか?それ以外は? – alptugd