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实现的map方法示例代码
Jan 13 Javascript
动态加载脚本提升javascript性能
Feb 24 Javascript
AngularJS 指令详细介绍
Jul 27 Javascript
使用JS批量选中功能实现更改数据库中的status状态值(批量展示)
Nov 22 Javascript
微信小程序 石头剪刀布实例代码
Jan 04 Javascript
js 判断登录界面的账号密码是否为空
Feb 08 Javascript
jQuery插件FusionCharts实现的MSBar2D图效果示例【附demo源码】
Mar 24 jQuery
node.js中EJS 模板快速入门教程
May 08 Javascript
JS 仿支付宝input文本输入框放大组件的实例
Nov 14 Javascript
加载 vue 远程代码的组件实例详解
Nov 20 Javascript
Vue+Express实现登录状态权限验证的示例代码
May 05 Javascript
ES6的解构赋值实例详解
May 06 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
PHP+shell脚本操作Memcached和Apache Status的实例分享
2016/03/11 PHP
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
调试Javascript代码(浏览器F12及VS中debugger关键字)
2013/01/25 Javascript
JS实现支持多选的遍历下拉列表代码
2015/08/20 Javascript
js实现温度计时间样式代码分享
2015/08/21 Javascript
学习javascript的闭包,原型,和匿名函数之旅
2015/10/18 Javascript
基于jQuery制作小图标上下滑动特效
2017/01/18 Javascript
微信小程序五星评分效果实现代码
2017/04/06 Javascript
js字符串倒序的实例代码
2018/11/30 Javascript
基于three.js实现的3D粒子动效实例代码
2019/04/09 Javascript
Vue 处理表单input单行文本框的实例代码
2019/05/09 Javascript
vue cli3.0 引入eslint 结合vscode使用
2019/05/27 Javascript
微信小程序实现一张或多张图片上传(云开发)
2019/09/25 Javascript
如何构建 vue-ssr 项目的方法步骤
2020/08/04 Javascript
[03:01]完美世界DOTA2联赛PWL S2 集锦第二期
2020/12/03 DOTA
Python多线程编程简单介绍
2015/04/13 Python
python动态加载包的方法小结
2016/04/18 Python
更改Ubuntu默认python版本的两种方法python-&gt; Anaconda
2016/12/18 Python
Python新手入门最容易犯的错误总结
2017/04/24 Python
python实现隐马尔科夫模型HMM
2018/03/25 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
python实现查找所有程序的安装信息
2020/02/18 Python
Python基于xlrd模块处理合并单元格
2020/07/28 Python
健康监测猫砂:Pretty Litter
2017/05/25 全球购物
巴基斯坦购物网站:Goto
2019/03/11 全球购物
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
篝火晚会策划方案
2014/05/16 职场文书
教师节宣传方案
2014/05/23 职场文书
应届大学生自荐书
2014/06/17 职场文书
法人授权委托书
2014/09/16 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
个人事迹材料怎么写
2014/12/30 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
2019各种承诺书范文
2019/06/24 职场文书
MySQL 发生同步延迟时Seconds_Behind_Master还为0的原因
2021/06/21 MySQL