下拉选择渲染函数无法读取未定义的属性总结
**原先我的代码是这样写的**
// 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>
解决Vue下拉选择器渲染错误:处理未定义属性
本文介绍了在Vue中使用picker组件时遇到的错误,即尝试访问未定义属性。通过添加v-if=catgory判断,解决了当数据为空时的渲染问题。解决方法和代码实例详细解释。





