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 相关文章推荐
IE8 原生JSON支持
Apr 13 Javascript
jQuery 1.2.x 升? 1.3.x 注意事项
May 06 Javascript
JavaScript 自动分号插入(JavaScript synat:auto semicolon insertion)
Nov 04 Javascript
js的alert弹出框出现乱码解决方案
Sep 02 Javascript
javascript常用对话框小集
Sep 13 Javascript
JavaScript中字符串拼接的基本方法
Jul 07 Javascript
jQuery正则验证注册页面经典实例
Jun 10 jQuery
详解webpack2+node+react+babel实现热加载(hmr)
Aug 24 Javascript
如何编写一个完整的Angular4 FormText 组件
Nov 18 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
Feb 08 Javascript
使用Vue实现移动端左滑删除效果附源码
May 16 Javascript
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
Oct 05 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将fileterms函数返回的结果变成可读的形式
2011/04/21 PHP
php遍历数组的4种方法总结
2014/07/05 PHP
php计算2个日期的差值函数分享
2015/02/02 PHP
php使用post数组的键值创建同名变量并赋值的方法
2015/04/03 PHP
PHP编程基本语法快速入门手册
2016/01/07 PHP
Laravel与CI框架中截取字符串函数
2016/05/08 PHP
Centos PHP 扩展Xchche的安装教程
2016/07/09 PHP
php中引用&amp;的用法分析【变量引用,函数引用,对象引用】
2016/12/12 PHP
老生常谈php中传统验证与thinkphp框架(必看篇)
2017/06/10 PHP
php微信公众号开发之关键词回复
2018/10/20 PHP
jQuery怎么解析Json字符串(Json格式/Json对象)
2013/08/09 Javascript
表单元素与非表单元素刷新区别详细解析
2013/11/06 Javascript
jQuery插件Echarts实现的双轴图效果示例【附demo源码下载】
2017/03/04 Javascript
深究AngularJS——ng-checked(回写:带真实案例代码)
2017/06/13 Javascript
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
JavaScript使用atan2来绘制箭头和曲线的实例
2017/09/14 Javascript
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
解决vue项目运行提示Warnings while compiling.警告的问题
2020/09/18 Javascript
在webstorm中配置less的方法详解
2020/09/25 Javascript
在Python中操作文件之truncate()方法的使用教程
2015/05/25 Python
对python添加模块路径的三种方法总结
2018/10/16 Python
基于python实现上传文件到OSS代码实例
2020/05/09 Python
详解用 python-docx 创建浮动图片
2021/01/24 Python
HTML5 Canvas 起步(2) - 路径
2009/05/12 HTML / CSS
NBA欧洲商店(英国):NBA Europe Store UK
2018/07/27 全球购物
牵手50香港:专为黄金岁月的单身人士而设的交友网站
2020/08/14 全球购物
美国名牌手表折扣网站:Jomashop
2020/05/22 全球购物
商务日语毕业生自荐信范文
2013/11/14 职场文书
高中教师评语大全
2014/04/25 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
群众路线对照检查材料
2014/09/22 职场文书
乡镇务虚会发言材料
2014/10/20 职场文书
秦始皇兵马俑导游词
2015/02/02 职场文书
2015年幼儿园学期工作总结
2015/05/22 职场文书