Vue.js仿Select下拉框效果


Posted in Javascript onFebruary 18, 2020

本文实例为大家分享了Vue.js仿Select下拉框效果的具体代码,供大家参考,具体内容如下

废话少说,直接上图上代码:

效果图:

Vue.js仿Select下拉框效果

HEML:

<div id="demo">
 
 <h2 class="title">自定义下拉框</h2>
 <imitate-select h2-value="第一个 Select" v-bind:list="list1"></imitate-select>
 
 <h2 class="title">自定义下拉框</h2>
 <imitate-select h2-value="第二个 Select" v-bind:list="list2"></imitate-select>
 
</div>

Javascript:

<script>
 // 注册组件【 全局 】
 Vue.component('imitate-select', {
  data: function(){ // 给每一个添加一个自己的对象
   return {
    selectShoe: false,
    val: ''
   }
  },
  props: ['h2Value', 'list'], // 这里的名称一定是驼峰式【如:上面是 h2-value(上面可以是烤串或驼峰式) ,下面必须是 h2Value】
  template: `<section class="main">
      <div class="select">
       <h2 class="fuzhi">{{ h2Value }}</h2>
       <div class="select_header">
        <input type="text" class="select_input" placeholder="模仿Select下拉框" @click="selectShoe = !selectShoe" :value="val" ><i></i>
       </div>
       <select-list v-show="selectShoe" :list="list" @receive="changeHandle"></select-list>
      </div>
     </section>`,
  methods: {
   changeHandle(value){ // 自定义事件
    // alert('我被触发了!值为:' + value)
    this.val = value
   }
  }
 });
 
 Vue.component('select-list', {
  props: ['list'],
  template: `<ul class="select_list">
      <li v-for="item of list" @click="selectHandle(item)">{{ item }}</li>
     </ul>`,
  methods: {
   selectHandle: function (item){
    this.$emit('receive', item)
   }
  }
 });
 
 new Vue({
  el: '#demo',
  data: {
   list1: ['HTML','CSS','Javascript','Vue.js'],
   list2: ['PHP','JAVA','C++','.NET']
  }
 })
</script>

更多教程点击《Vue.js前端组件学习教程》,欢迎大家学习阅读。

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js或jquery实现页面打印可局部打印
Mar 27 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
Feb 13 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
Aug 06 Javascript
简单实现js选项卡切换效果
Feb 03 Javascript
jquery实现全选、不选、反选的两种方法
Sep 06 Javascript
JavaScript事件用法浅析
Oct 31 Javascript
js闭包学习心得总结
Apr 17 Javascript
element上传组件循环引用及简单时间倒计时的实现
Oct 01 Javascript
基于layui的table插件进行复选框联动功能的实现方法
Sep 19 Javascript
这15个Vue指令,让你的项目开发爽到爆
Oct 11 Javascript
关于vue属性使用和不使用冒号的区别说明
Oct 22 Javascript
vue 动态添加class,三个以上的条件做判断方式
Nov 02 Javascript
JavaScript中的惰性载入函数及优势
Feb 18 #Javascript
jquery实现垂直手风琴导航栏
Feb 18 #jQuery
vue微信分享插件使用方法详解
Feb 18 #Javascript
jQuery表单校验插件validator使用方法详解
Feb 18 #jQuery
vue+ts下对axios的封装实现
Feb 18 #Javascript
ES6中Promise的使用方法实例总结
Feb 18 #Javascript
React中获取数据的3种方法及优缺点
Feb 18 #Javascript
You might like
echo(),print(),print_r()之间的区别?
2006/11/19 PHP
php里array_work用法实例分析
2015/07/13 PHP
PHP登录验证码的实现与使用方法
2016/07/07 PHP
PHP API接口必备之输出json格式数据示例代码
2017/06/27 PHP
为超链接加上disabled后的故事
2010/12/10 Javascript
Jquery中LigerUi的弹出编辑框(实现方法)
2013/07/09 Javascript
javascipt匹配单行和多行注释的正则表达式
2013/11/20 Javascript
用Jquery选择器计算table中的某一列某一行的合计
2014/08/13 Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
2016/01/28 Javascript
js基础之DOM中元素对象的属性方法详解
2016/10/28 Javascript
easyUI combobox实现联动效果
2017/01/17 Javascript
Angular开发者指南之入门介绍
2017/03/05 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
vue实现图片加载完成前的loading组件方法
2018/02/05 Javascript
js属性对象的hasOwnProperty方法的使用
2021/02/05 Javascript
原生JS实现音乐播放器的示例代码
2021/02/25 Javascript
利用Python生成文件md5校验值函数的方法
2017/01/10 Python
python生成器与迭代器详解
2019/01/01 Python
Python如何调用外部系统命令
2019/08/07 Python
python中的函数递归和迭代原理解析
2019/11/14 Python
Python发送手机动态验证码代码实例
2020/02/28 Python
python3.7+selenium模拟淘宝登录功能的实现
2020/05/26 Python
python3.8动态人脸识别的实现示例
2020/09/21 Python
使用html5 canvas创建太空游戏的示例
2014/05/08 HTML / CSS
Html5 Canvas实现图片标记、缩放、移动和保存历史状态功能 (附转换公式)
2020/03/18 HTML / CSS
办公室主任岗位职责
2013/11/08 职场文书
工作交流会欢迎词
2014/01/12 职场文书
办公室主任职责范本
2014/03/07 职场文书
暑期培训心得体会
2014/09/02 职场文书
预备党员考察表党小组意见
2015/06/01 职场文书
小学毕业感言100字
2015/07/30 职场文书
员工担保书范本
2015/09/22 职场文书
评估“风险”创业计划的几大要点
2019/08/12 职场文书
SQL语法CONSTRAINT约束操作详情
2022/01/18 MySQL
配置Kubernetes外网访问集群
2022/03/31 Servers
MySQL GTID复制的具体使用
2022/05/20 MySQL