2

これは、オートフォームを使用して変換したいフォームの一部です。

<div class="col-lg-4 col-md-4 col-sm-4">
<label for="pay_with" id="pay_with_label">Pay With</label>
<select name="pay_with" id="pay_with" class="form-control select select-primary mbl" required data-placeholder="Select an Option">
    <option value="Card">New Card</option>
    <option value="Check">New Bank</option>
    {{#each device}}
        <option value="{{card_id}}" selected {{selected}}>{{brand}} - {{last4}}</option>
    {{/each}}
</select>

autoform で、この部分をどのように翻訳しますか?

{{#each device}}
    <option value="{{card_id}}" selected {{selected}}>{{brand}} - {{last4}}</option>
{{/each}}
4

1 に答える 1

2

次のように、autoform の適切なスキーマを取得するために、devices 配列をマッピングし、追加のオプションを追加して、選択メニューの options 配列を返すテンプレート ヘルパー関数を作成します。

Template.myForm.helpers({
   deviceOptions: function() {

      var deviceOpts = devices.map(function(device) {
         return { label: device.brand+' - '+device.last4, value: device.card_id }
      });

      deviceOpts.unshift({ label: 'New bank', value: 'Check' });
      deviceOpts.unshift({ label: 'New card', value: 'Card' });

      return deviceOpts;
   },
});

次に、テンプレート ディレクティブでヘルパーを呼び出すことができます。

{{> afFieldInput name="payWith" type="select" options=deviceOptions }}
于 2015-03-31T20:46:48.113 に答える