问题描述:
在组件中使用slot,然后在slot上使用wx:if,用于控制其下内容的显示与不显示,显示与不显示是可以进行正常操作的,但是不显示的组件,其内容在表单提交的时候会依旧存在,官方文档不是说wx:if判断为false的应该不会被渲染吗?为何在表单提交的时候会有被隐藏的内容?
组件的代码
<picker bindchange="bindPickerChange" model:value="{{value}}" class="inputText" range-key="{{nameField}}" range="{{array}}">
<view wx:if="{{value}}" class="{{pickerstyle}}">
{{array[value][nameField]}}
</view>
<view wx:else class="{{placeholderstyle}}">
{{placeholder}}
</view>
<input style="display:none;" name="{{name}}" model:value="{{value? array[value][idField]:index}}"></input>
</picker>
<!-- 如果选择的值等于showId,则展示内容 -->
<slot wx:if="{{showId == 1}}"></slot>
下面是使用组件的代码
<view class="container">
<form bindsubmit="submitForm">
<dic-picker name="demo1" showId="1">
<input name="demo" value="123456" />
</dic-picker>
<button form-type="submit" >提交
</button>
</form>
</view>
给内容设置了默认值吗?
不渲染
隐藏是hidden