下拉选择渲染函数无法读取未定义的属性总结

**原先我的代码是这样写的**
// picker 下拉选择商品分类
<view class="bbox-item">
	<view class="bminzi">商品分类:</view>
	<view class="bit">*</view>
	<view class="uni-list">
		<view class="uni-list-cell" style="padding-right: 16rpx;">
			<view class="uni-list-cell-db">
				<picker @change="PickerCategory" range-key="name" :data-id="catgory[index].category_id" :value="index" :range="catgory">
					<view class="uni-input">{{ category_id != '' ? catgory[index].name: '请选择' }}</view>
				</picker>
			</view>
		</view>
	</view>
</view>

在这里插入图片描述
然后出现渲染函数出错:Vue中的“TypeError:无法读取未定义的属性,之所出现这个问题的原因是当他的初始值为null或undefined时未定义,才出现的警告错误
解决办法

加一个 v-if="catgory"判断即可阻止他执行后面的data_id的方法了,代码如下
// picker 下拉选择商品分类
<view class="bbox-item">
	<view class="bminzi">商品分类:</view>
	<view class="bit">*</view>
	<view class="uni-list">
		<view class="uni-list-cell" style="padding-right: 16rpx;">
			<view class="uni-list-cell-db">
				<picker @change="PickerCategory" v-if="catgory" range-key="name" :data-id="catgory[index].category_id" :value="index" :range="catgory">
					<view class="uni-input">{{ category_id != '' ? catgory[index].name: '请选择' }}</view>
				</picker>
			</view>
		</view>
	</view>
</view>
Logo

前往低代码交流专区

更多推荐