我的编程空间,编程开发者的网络收藏夹
学习永远不晚

使用vant-picker实现自定义内容,根据内容添加图标

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

使用vant-picker实现自定义内容,根据内容添加图标

前言

在使用vant的框架的时候发现一件事,他的下拉内容只能输入文字,不可以是自定义,比如加图标,所以使用它的class名,然后仿照他的功能给完善了下,可以实现了自定义添加内容

实现效果

vant原来框架的内容:

我经过处理以后的效果图

这里的图片地址没有,如果满足条件,前面就有图片

实现步骤 

1、template部分

我这上面是vant的picker,可以打开看看之前的效果,这里是仿照他的效果实现的功能

 <van-popup v-model="showPicker" position="bottom">
<!--        <van-picker-->
<!--          show-toolbar-->
<!--          :columns="enterpriseList"-->
<!--          @cancel="showPicker = false"-->
<!--          @confirm="onConfirm"-->
<!--        >-->
<!--        <an-picker>-->
 
               <compicker-->
                      :enterpriseList="enterpriseList"
                       @cancel="showPicker = false"
                      @onConfirm="onConfirm">
                </compicker>
 
        <div class="van-picker">
          <div class="van-hairline--top-bottom van-picker__toolbar">
            <div class="van-picker__cancel" @click="showPicker = false">取消</div>
            <div class="van-picker__confirm" @click="onConfirm(enterpriseList[picker_active])">确认</div>
          </div>
          <div class="van-picker__columns" style="height: 220px">
            <div class="van-picker-column"
                 @scroll="change_picker_scroll"
                 style="height: 220px;overflow-y: auto;">
              <ul class="transition: all 0ms ease 0s; transform: translate3d(0px, 88px, 0px)"style="line-height: 44px">
                <li :class='{"van-picker-column__item--selected":picker_active==index}'
                    class="van-ellipsis van-picker-column__item"
                    style="height: 44px"
                    @click="change_picker(item,index)"
                    v-for="(item,index) in enterpriseList" :key="index">
<!--                  <img v-if="item.jfzt=='1'" class="lazy" data-src=""/>-->
                  <span v-if="item.jfzt=='1'"><img class="lazy" data-src="class="lazy" data-src"></span>
                  {{item.text}}<>
              </ul>
 
            </div>
          </div>
        </div>
 
 
 
 
      <an-popup>

2、data部分

picker_active:1,//因为要弄一个上面有空格的效果,所以初始化从第二个开始

3、methods部分

//点击确定事件
onConfirm(value) {
      this.enterprise = value;
      this.showPicker = false;
    },
    
    change_picker(item,index) {
      this.picker_active=index;
    } ,
//滚动条滚动事件
 change_picker_scroll(v){
      let scrollTop = v.class="lazy" data-srcElement.scrollTop;
      this.picker_active = Math.ceil(scrollTop/44)+1;//向上取整,并加上第一个空格
    },

获取数据那里的方法:

 this.enterpriseList = this.enterpriseList.map((item) => {
              return {
                keyId: item.id,
                nsrsbh: item.nsrsbh,
                text: item.nsrmc,
                jfzt:item.jfzt  //是否付费
 
              };
            });
            //上面加1行空格
            this.enterpriseList.unshift({});

到此结束~

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

使用vant-picker实现自定义内容,根据内容添加图标

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

使用vant-picker实现自定义内容,根据内容添加图标

这篇文章主要介绍了使用vant-picker实现自定义内容,根据内容添加图标,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-12-08

使用Python实现嵌套绘图并为条形图添加自定义标注

本文介绍了如何使用Python实现嵌套绘图并为条形图添加自定义标注。具体步骤包括:导入库、准备数据、创建嵌套绘图、自定义标注、添加图例和显示图表。通过示例代码展示了创建嵌套条形图并使用文本标注显示每个条形图高度的过程,有助于理解和应用该技术。
使用Python实现嵌套绘图并为条形图添加自定义标注
2024-04-02

编程热搜

目录