1

知りたいのですが、以下の目的を達成できる方法はありますか。

<button class="{{unless publishable "button-disabled"}}" {{if publishable (action "publish")}}>Publish</button>

もちろんアクションメソッドでも可能です。テンプレートで実行できれば、コードをよりドライに保つことができると思います。

ノート:

  • 上記のコードが機能しないことはわかっています。これは、説明のためだけのものです。
  • ボタンがdisabledこれを達成するために属性を使用できることを私は知っています。私のオリジナル作品では、実際には<a/>を持たないdisabledです。<a/>CSSの目的でタグとして保持する必要があります。
  • 無効になっているかどうかに関係なく、ボタンをページに保持したいと思います。これは一種の Web ページ規約です。その場合、ユーザーは、ボタンが無効になっているときに何かが足りないことに気付くでしょう。
4

1 に答える 1

5

ヘルパー{{mut}}と組み合わせて使用​​することが可能です:{{action}}

<button {{action (if publishable 'publish' (action (mut undefProp)))}}>Publish</button>

動作デモ。

この特定のユース ケース (mut関数に変換) の詳細については、このブログ投稿を参照してください。

説明:

アクション ヘルパーを使用し、そのヘルパーに渡すアクションは if 条件に基づいて計算されます。

'publish'条件が true と評価された場合は、単純にアクション名を返します。

condition が false と評価された場合、何もしない action を渡します - workaround: のようなものを使用します(action (mut undefProp))

于 2015-11-19T10:54:36.780 に答える