以下是我希望转换为使用autoform的表单的一部分。
<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}}
答案 0 :(得分:2)
创建一个模板助手函数,它返回选择菜单的options数组,方法是映射你的设备数组并添加额外的选项,以便为autoform获得正确的模式,如下所示:
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 }}