uniApp 下拉选择渲染函数出错:Vue中的“TypeError:无法读取未定义的属性”

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

**原先我的代码是这样写的**
// 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>
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值