前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >uni-app 中的 picker 组件基于后台对象数组数据格式的使用

uni-app 中的 picker 组件基于后台对象数组数据格式的使用

作者头像
猫头虎
发布2024-04-08 10:31:06
2260
发布2024-04-08 10:31:06
举报

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 🌊 《IDEA开发秘籍专栏》学会IDEA常用操作,工作效率翻倍~💐 🌊 《100天精通Golang(基础入门篇)》学会Golang语言,畅玩云原生,走遍大小厂~💐

🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🍁🐥

uni-app 中的 picker 组件基于后台对象数组数据格式的使用

view:

代码语言:javascript
复制
		<view class="uni-list">
				<view class="uni-list-cell">
					<view class="uni-list-cell-db">
						<picker mode="selector" v-model="pSId" @change="bindPickerChange" :value="index"
							:range="pSNames" range-key="pSName">
							<view class="flex picker">
								<view class='flex-item margin-lg'>我选择:{{pSNames[index].pSName}}

								</view>

							</view>
						</picker>
					</view>
				</view>
			</view>

data:

代码语言:javascript
复制
<script>
	
	export default {
		data() {
			return {
				
				pSId: '',
				
				pSNames: [{
					"pSId": "",
					"pSName": ""
				}],
				index: 0,
				pSName: ""
				
			};
		},

	methods: {
bindPickerChange(e) {
				console.log(e)
				this.index = e.detail.value
				this.pSId = this.pSNames[e.detail.value].pSId
				console.log(this.pSId)
			},
	}

PS:

普通数组:

代码语言:javascript
复制
 <view class="uni-list-cell-db">  
     <picker @change="bindPickerChange" :value="index" :range="array">  
       <view class="uni-input">{{array[index]}}</view>  
    </picker>  
  </view>  
export default {  
    data() {        
        return {            
            array: ['中国', '俄国'],  
            index: 0,  
        }  
    },  
    methods: {  
        bindPickerChange: function(e) {  
            console.log('picker发送选择改变,携带值为', e.target.value)  
            this.index = e.target.value  
        },  
    }  
}

重点分析:

  1. range='{{objectArray}}' 指定对象数组
  2. range-key="{{'name'}}" 指定 range-key,即指定使用objectArray中的 name属性来作为选择器中显示的内容,这里需要注意取出的属性外加了‘’号,即‘name’,引号不可少
  3. value='{{objectArray[rangekey].value}}'rangekey是js中定义的对象数组的下标,objectArray[rangekey]取出的是改下标的对象,如 {id: 1,name: '苹果',price: 18.6},而objectArray[rangekey].valuevalue值表示的是range-key中指定的属性,这里是name,即苹果。
  4. 最终展示选中的内容{{objectArray[rangekey].price}} 元,仍然是通过数组的下标获取,只是这里取出的是对象,.price取出对象中的价格。

总结

到此相信大家都已经明白了picker的range和range-key的用法,简单总结一下picker的range中存放的是objectArray时需要通过range-key去指定选择器中显示的内容,否则通过数组下标取出的是一个object对象。

结语

转全栈第一篇博客,感谢支持~ 如果这篇文章对您有所帮助,或者有所启发的话,求一键三连:点赞、评论、收藏➕关注,您的支持是我坚持写作最大的动力。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-08-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • uni-app 中的 picker 组件基于后台对象数组数据格式的使用
  • view:
  • data:
  • 普通数组:
  • 总结
  • 结语
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档