表单选的时提交时做校验,
validate-trigger="submit"
自定义了表单事件,第一次点击提交无法触发校验,再选择操作,才没问题
<uni-forms-item class="side-padding" :name="item.prop" :required="item.required||false" :label="item.label" v-else-if="item.type==='actionsheet'&&item.hidden!==false">
<input :disabled="formData.disabled || false" type="text" v-model="formData[item.prop]" class="uni-input-border" placeholder-style="font-size: 32rpx;color:#CCCCCC;text-align: right;" @focus="getsyscode(item)" @blur="binddata(item.prop, $event.detail.value)" :placeholder="item.placeholder||'请选择'" />
<tui-actionsheet
:show="item.showActionSheet || false"
:item-list=" item.itemList||'' "
@click="itemClick($event,item)"
@cancel="()=>{item.showActionSheet=false}">
</tui-actionsheet>
</uni-forms-item>
问题处理过程中,发现第一次点击选择后调用
this.$refs.form.setValue(this.formData[item.prop],item.itemList[i].text)
时,this.formData[item.prop],即该字段undefine,不存在,原来就是未定义,只需要在开始定义formData时,把字段初始化定义一遍即可。

在uni-app中使用uni-forms进行表单验证时,遇到首次点击提交不触发校验的异常。问题在于自定义表单事件在第一次触发时,字段`this.formData[item.prop]`为undefined。解决方案是初始化formData时,确保所有字段已定义。
1283

被折叠的 条评论
为什么被折叠?



