尽管前端程序现在发展迅速,各种框架层出不穷,但是对广大非前端码农来说构建Web界面的最好的选择仍然还是Bootstrap 4。但是Bootstrap依赖于已经严重过时,被抛弃的jQuery组件,那么如何解决这个问题就迫在眉睫了。

Vue项目以其轻巧、高性能,易上手,双向数据绑定,组件化的特点,快速流行并广为使用,那么有没有可能将Bootstrap的依赖改为Vue呢?答案是肯定的。

本文我们就介绍这样一个解决方案,Bootstrap-Vue项目。

安装和设置

Bootstrap-Vue项目提供了Bootstrap项目中jQuery组件依赖了Vue替换方案,可以实现绝大多数案例和组件的替代。我们建议以Vue Cli插件方式使用,这样可以实现项目自动创建和配置,依赖项添加。首先我们安装Vue Cli

安装Vue Cli

由于npm安装较慢,甚至会失败,需要,先安装国内镜像,可以使用cnpm或者npm别称:

然后用cnpm安装vue.js

cnpm install -g @vue.js

创建项目

vue create hello-chongchong

这样Vue CLI会自动创建一个Vue项目,提示选择项,选择"default"即可。

进入该项目目录:

cd hello-chongchong

使用下面的命令将Bootstrap-Vue插件添加到项目中。选项提示时,选择 "Y"。

vue add bootstrap-vue

这样无需任何复杂设置就可以设置好一个以vue启动的Bootstrap项目。

清除示例

默认情况下,Vue CLI为提供了一个示例HelloWorld应用程序。这都没啥用的,我们直接清除,包括App.vue和部件目录下的 HelloWorld.vue:

>src/components/App.vuerm src/components/HelloWorld.vue

示例使用

创建模版

Bootstrap所有功能基本都可以在bootstrap-vue中以全局注册的组件来使用。这些组件通常和Bootstrap同名,为了以示区别,他们都以开头b-xxxx。

在此我们创建一个新的App.vue模板并添加一个Bootstrap容器:

Hello, Chongchong!

然后启用该服务

npm run serve

然后,浏览器访问,应该看到以下内容:

另外,如果查看页面源码,可以看到该b-container组件已使用常规的Bootstrap元素和类进行渲染:

Hello, Chongchong!

组件配置

许多组件都可以使用Vue道具进行配置。例如, b-btn组件,可以在页面中添加一个将按钮。b-btn有一个variant控制按钮主题,此处设置为primary。

Hello, Chongchong!

Click

Vue支持将动态值绑定到Bootstrap组件。例如,对b-alert组件添加一个alert提示信息。我们将其设success并提供一些提示信息。

Hello, Chongchong!

ClickYou clicked the button!

可以将showprop绑定到本地data属性来有条件地显示信息showAlert。然后将showAlert响应组件click事件来切换的值b-btn。

Hello, Chongchong!

ClickYou clicked the button!

比jQuery逻辑写起来简单多了。

Bootstrap-Vue指令

一些Bootstrap功能是作为指令而非组件提供的,因此可以轻松地将其添加到给已有元素。

例如,要添加工具提示功能,可以使用v-b-tooltip指令。下面我们使用指令参数hover向按钮添加一个,在按钮悬停时触发。

 Click 

注:tooltip插件需要popper.js的依赖项,但是使用Vue CLI安装Bootstrap-Vue,会自动include。

总结:

利用Bootstrap-Vue 来替换Bootstrap 4中的jQuery非常容易,而且可以带来vue cli的巨大的功能优势,大家可以尝试将手头的项目都替换一下。

bootstrap项目更改为vue_取代Jquery,用Vue 构建Bootstrap 4 应用相关推荐

  1. vue全局安装jquery,vue使用bootstrap框架,vue中封装websocket通讯,vue引入element-ui 组件库,引入highcharts图表插件

    vue安装jquery: 1.使用vue-cli创建好vue项目后,在项目文件夹下,使用命令npm install jquery --save-dev 引入jquery. 2.修改项目文件 build ...

  2. antd vue关闭模态对话框_如何在Bootstrap项目中用Vue.js替代jQuery

    Bootstrap是 Web 开发最受欢迎的框架之一,没有比它开发响应式网站项目效率最高了. 随着Vue.js的逐渐流行,更多人们用它来控制页面元素,实现强大互动功能.而jQuery出现了一些技术落后 ...

  3. bootstrap 打印组件_如何在Bootstrap项目中用Vue.js替代jQuery

    Bootstrap是 Web 开发最受欢迎的框架之一,没有比它开发响应式网站项目效率最高了. 随着Vue.js的逐渐流行,更多人们用它来控制页面元素,实现强大互动功能.而jQuery出现了一些技术落后 ...

  4. 3 ie兼容 vue_前端开发:MVVM框架之Vue势必会取代JQuery吗?

    最近接受一个新项目,前端是选用jquery还是用vue这个问题,团队里面就产生了分歧,我作为项目负责人,最终决定新项目采用Vue,原因如下: 1.本次项目界面和后台数据交互比较多,采用mvvm框架开发 ...

  5. 用 Vue 改造 Bootstrap,渐进提升项目框架

    GitChat 作者:Meathill 原文:用 Vue 改造 Bootstrap,渐进提升项目框架 关注微信公众号:「GitChat 技术杂谈」 一本正经的讲技术 [不要错过文末彩蛋] 前言 Vue ...

  6. 用 Vue 改造 Bootstrap,渐进提升项目框架[转]

    GitChat 作者:Meathill 原文:用 Vue 改造 Bootstrap,渐进提升项目框架 关注微信公众号:「GitChat 技术杂谈」 一本正经的讲技术 [不要错过文末彩蛋] 前言 Vue ...

  7. 第二百五十三节,Bootstrap项目实战-资讯

    Bootstrap项目实战-资讯 html <!DOCTYPE html> <html lang="zh-cn"> <head><meta ...

  8. jq的插件 vue中引用_详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件

    本篇文章主要介绍了详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件,具有一定的参考价值,有兴趣的可以了解一下 使用vue-cli构建的vue项目,webpack的配置文 ...

  9. Abp项目更改默认主题在Blazorl项目的UI上

    Abp项目更改默认主题在Blazorl项目的UI上 参考:Replace Basic Bootstrap theme with a free custom Bootstrap theme https: ...

最新文章

  1. 卧槽!新基建背景下,这些姿势架构师必须懂!
  2. Java格式化日期用斜杠_[java工具类01]__构建格式化输出日期和时间的工具类
  3. 嵌入式转linux服务器,嵌入式linux下web服务器搭建
  4. 深入浅出Node.js(八):Connect模块解析(之二)静态文件中间件
  5. sap.m.list render initialization process
  6. Oracle触发器之表新增/修改的触发操作
  7. 【洛谷】NOIP2018原创模拟赛DAY1解题报告
  8. java 解锁关闭文件占用_程序员:Java文件锁定、解锁和其它NIO操作
  9. Android Binder Driver流程分析
  10. mmp格式转换_mmp是什么意思
  11. PMP 第10章 项目沟通管理
  12. 关于Eclipse在servlet中连接数据库时出现驱动加载失败的解决
  13. ipa包安装到苹果手机中的几种方式——Qt for IOS
  14. 打印机form2尺寸_windows7中如何设置打印机纸张大小 以241-2纸张为例
  15. VMware workstations安装黑苹果系统
  16. 导数的四则运算法则_高中生如何学习导数
  17. MySQLdb._exceptions.OperationalError: (1045, “Access denied for user ‘root‘@‘localhost‘ (using passw
  18. 【工具】2019 Adobe全家桶pdf——百度网盘下载(PS、AE、PR等)
  19. QQ号码丢了不用着急 一步一步找回来
  20. 药店管理系统源码 药店管理信息系统源码带文档

热门文章

  1. Hyperledger Fabric Java SDK最新教程
  2. windows平台一个高性能、通用型的C++生产者/消费者架构模板
  3. php imagefill,PHP 图像填充 imagefill、imagefilledarc 与 imagefilledrectangle() 函数
  4. php 同步代码,PHP进程同步代码实例
  5. shell在二级python_在Shell脚本中检查Python版本的方法
  6. node 生成随机头像_唯一ID生成算法剖析
  7. ncnn源码编译安装
  8. mingw编译ffmpeg 错误:Unknown option --enable-memalign-hack
  9. tcpdump抓取mysql语句
  10. Kerberos的原理 - MIT