bootstrap select插件封装成Vue2.0组件
发布时间 - 2026-01-11 00:41:05 点击率:次因为bootstrap-select功能比较强大,而且样式还不错,所以在项目使用了vue,所以,觉得对bootstrap-select进行封装。

html
复制代码 代码如下:<my-select :options="input.options" v-model="input.value" ref="typeSelect" :index="index" :childidx="childIdx" :load="load" :multiple="input.multiple" :method="change"></my-select>
js
// select 插件
Vue.component('vm-select', {
props : ['options', 'value', 'multiple', 'method', 'load', 'index', 'childidx'],
template : "<select :multiple='multiple' class='selectpicker' data-live-search='true' title='请选择' data-live-search-placeholder='搜索'><option :value='option.value' v-for='option in options'>{{ option.label }}</option></select>",
mounted : function () {
var vm = this;
$(this.$el).selectpicker('val', this.value != null ? this.value : null);
$(this.$el).on('changed.bs.select', function () {
vm.$emit('input', $(this).val());
if (typeof(vm.method) != 'undefined') {
vm.method(vm.index, vm.childidx, this.value);
}
});
$(this.$el).on('show.bs.select', function () {
if (typeof(vm.load) != 'undefined') {
vm.load(vm.index, vm.childidx);
}
});
},
updated : function () {
$(this.$el).selectpicker('refresh');
},
destroyed : function () {
$(this.$el).selectpicker('destroy');
}
});
不得不提一下,在使用多个select的时候,在删除某一个selcet对象的时候,加载的值会发生改变,纠结了半天发现是vue自身的问题:因为vue对象有在重新渲染html的过程中会复用原来相同的vue对象,所以导致会导致selcet对象错位。解决方案:将每个select对象打上一个标签key。虽然可能导致性能的下降,但是不会导致错误。
vue官网
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# bootstrap
# select
# Vue
# vue-cropper插件实现图片截取上传组件封装
# vue以组件或者插件的形式实现throttle或者debounce
# Vue使用zTree插件封装树组件操作示例
# vue中的自定义分页插件组件的示例
# 基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
# vue自定义全局组件(自定义插件)的用法
# vue中插件和组件的区别点及用法总结
# 多个
# 半天
# 还不错
# 请选择
# 不提
# 中会
# 官网
# 大家多多
# 复用
# 加载
# 使用了
# change
# childIdx
# gt
# load
# multiple
# method
# component
# vm
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
Mybatis 中的insertOrUpdate操作
Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践
如何在阿里云通过域名搭建网站?
如何快速搭建高效WAP手机网站?
创业网站制作流程,创业网站可靠吗?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
Laravel怎么使用Intervention Image库处理图片上传和缩放
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
如何用美橙互联一键搭建多站合一网站?
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
Laravel怎么生成URL_Laravel路由命名与URL生成函数详解
PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑
如何用5美元大硬盘VPS安全高效搭建个人网站?
深圳网站制作平台,深圳市做网站好的公司有哪些?
zabbix利用python脚本发送报警邮件的方法
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
如何获取上海专业网站定制建站电话?
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
香港服务器网站卡顿?如何解决网络延迟与负载问题?
Laravel如何实现文件上传和存储?(本地与S3配置)
Laravel如何构建RESTful API_Laravel标准化API接口开发指南
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
C++时间戳转换成日期时间的步骤和示例代码
Laravel如何实现用户注册和登录?(Auth脚手架指南)
微信小程序制作网站有哪些,微信小程序需要做网站吗?
高端云建站费用究竟需要多少预算?
微信小程序 配置文件详细介绍
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】
Laravel Debugbar怎么安装_Laravel调试工具栏配置指南
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
如何快速上传建站程序避免常见错误?
微信推文制作网站有哪些,怎么做微信推文,急?
香港服务器部署网站为何提示未备案?
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
手机网站制作与建设方案,手机网站如何建设?
Laravel怎么使用artisan命令缓存配置和视图
Laravel如何发送系统通知?(Notification渠道示例)
Laravel如何保护应用免受CSRF攻击?(原理和示例)
Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
如何用景安虚拟主机手机版绑定域名建站?
HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】

