话不多说,上代码
wxml文件
<view wx:for="{{formOpts.fieldList}}" wx:key="index">
<van-field
name="{{item.value}}"
value="{{formOpts.formData[item.value]}}"
placeholder="{{item.placeholder || ''}}"
label="{{item.label}}"
type="{{item.type}}"
data-item="{{item}}"
disabled="{{item.disabled}}"
readonly="{{item.readonly}}"
required="{{item.required}}"
clearable
bind:change="bindChangeTap"
bind:tap="bindConfirmTap"
/>
</view>
js文件
properties: {
formData: {
type: Object,
value: () => ({}),
},
},
methods: {
bindChangeTap(e){
const { item } = e.currentTarget.dataset;
this.setData({
[`formData.${item.value}`]: e.detail
})
}
}