Vue CLI3.0中使用jQuery和Bootstrap的方法


Posted in jQuery onFebruary 28, 2019

Vue 中使用 jQuery 和 Bootstrap 不是特别符合 Vue 原生的写法,但是有时候又要用,所以放上我的引入设置,供大家参考。

在 Vue CLI2.0 中引入 jQuery 和 Bootstrap 需要设置很多配置项,网上有很多方法法,这里不重复写了。直接上 Vue CLI3.0 配置步骤。

第一步:安装 jQuery、 Bootstrap、popper.js依赖。

其中popper.js 用于在 Bootstrap 中显示弹窗、提示、下拉菜单,所以需要引入。

npm install jquery bootstrap@3 popper.js --save

注意:上面的 bootstrap@3 指的是安装 Bootstrap 第三版,如果不加 @3 符号,默认安装第四版。

第二步:配置 main.js

引入 Boostrap 请看配置文件。

//main.js

import Vue from "vue";
import App from "./App.vue";
import router from "./router";
import store from "./store";
//在这里引入 bootstrap。默认只引入 bootstrap 中的 js,css 需要另外引入,我的 bootstrap.ss 在APP.vue中引入的
import "bootstrap";
//也可以在这里引入 bootstrap.css ;
//import "bootstrap/dist/css/bootstrap.css";

Vue.config.productionTip = false;

new Vue({
 router: router,
 store: store,
 render: h => h(App)
}).$mount("#app");

我的 APP.vue 的配置,只是引入 bootstrap.css,代码仅供参考。

<style>
// 因为我的 bootstrap 文件经过了我自己的调整,所以单独放在 assets 文件夹中做单独引入。
//如果你只是想使用原生的 bootstrap,直接在 main.js 中引入 css 文件即可。
@import "./assets/css/bootstrap.css";
</style>

第三步:配置 vue.config.js 文件

Vue CLI3.0 中的所有配置都在 vue.config.js 文件,你在这里配置好,脚手架自动使用你的配置覆盖掉默认的配置。

如果你的项目中没有 vue.config.js 文件,请你在 package.json 文件的同级目录新建一个 vue.config.js 文件。文件内具体的配置如下:

const webpack = require("webpack");

module.exports = {
//configureWebpack 是Vue CLI3.0 中用于配置 webpack 插件参数的地方,你在这里设置,会新建或者覆盖 webpack 默认配置。
//webpack ProvidePlugin 的含义是创建一个全局的变量,使这个变量在 webpack 各个模块内都可以使用。这里的配置含义是创建 '$'、'jQuery'、'window.jQuery' 三个变量指向 jquery 依赖,创建 'Popper' 变量指向 popper.js 依赖。
  configureWebpack: {
    plugins: [
      new webpack.ProvidePlugin({
        $: 'jquery',
        jQuery: 'jquery',
        'window.jQuery': 'jquery',
        Popper: ['popper.js', 'default']
       })
    ]
   }
}

第四步:具体使用范例

我做了一个 tooltip 的示例,鼠标放上去会出现 tooltip 提示

//template
<template>
 <div class="content-wrap">
  <button type="button" class="btn btn-default" data-toggle="tooltip" data-placement="left" title="Tooltip on left">Tooltip on left</button>
  <button type="button" class="btn btn-primary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">Tooltip on top</button>
  <button type="button" class="btn btn-warning" data-toggle="tooltip" data-placement="bottom" title="Tooltip on bottom">Tooltip on bottom</button>
  <button type="button" class="btn btn-danger" data-toggle="tooltip" data-placement="right" title="Tooltip on right">Tooltip on right</button>
 </div>
</template>


<script>
export default {
 name: "componentsTooltips",
 mounted: function() {
  //在页面加载完毕后初始化 tooltip, 相当于$(function(){ $('[data-toggle="tooltip"]').tooltip(); }
  $('[data-toggle="tooltip"]').tooltip();
 }
};
</script>

如果 eslint 报误,请设置 .eslintrc.js 文件。

module.exports = {
 env: {
  node: true,
  jquery: true
 }
};

本人测试结果如下:

Vue CLI3.0中使用jQuery和Bootstrap的方法

参考文档:

Vue CLI3.0: https://cli.vuejs.org/zh/guide/webpack.html

Bootstrap tooltip :https://v3.bootcss.com/javascript/#tooltips

Stackoverflow: https://stackoverflow.com/questions/42684661/adding-bootstrap-to-vue-cli-project

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

jQuery 相关文章推荐
jQuery使用eraser.js插件实现擦除、刮刮卡效果的方法【附eraser.js下载】
Apr 28 jQuery
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
webpack里使用jquery.mCustomScrollbar插件的方法
May 30 jQuery
jQuery阻止事件冒泡实例分析
Jul 03 jQuery
jQuery实现的点击按钮改变样式功能示例
Jul 21 jQuery
如何使用CSS3和JQuery easing 插件制作绚丽菜单
Jun 18 jQuery
jQuery层叠选择器用法实例分析
Jun 28 jQuery
jquery图片预览插件实现方法详解
Jul 18 jQuery
jQuery中DOM常见操作实例小结
Aug 01 jQuery
Jquery滑动门/tab切换实现方法完整示例
Jun 05 jQuery
jquery简易手风琴插件的封装
Oct 13 jQuery
jQuery实现移动端扭蛋机抽奖
Nov 08 jQuery
jQuery.parseJSON()函数详解
Feb 28 #jQuery
jQuery each和js forEach用法比较
Feb 27 #jQuery
jQuery中each和js中forEach的区别分析
Feb 27 #jQuery
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
Feb 27 #jQuery
js/jquery遍历对象和数组的方法分析【forEach,map与each方法】
Feb 27 #jQuery
jQuery表单元素过滤选择器用法实例分析
Feb 20 #jQuery
jQuery内容过滤选择器与子元素过滤选择器用法实例分析
Feb 20 #jQuery
You might like
php代码运行时间查看类代码分享
2011/08/06 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
原创javascript小游戏实现代码
2010/08/19 Javascript
30个最好的jQuery 灯箱插件分享
2011/04/25 Javascript
推荐40款强大的 jQuery 导航插件和教程(上篇)
2012/09/14 Javascript
浅析jQuery中常用的元素查找方法总结
2013/07/04 Javascript
js实现收缩菜单效果实例代码
2013/10/30 Javascript
showModelDialog弹出文件下载窗口的使用示例
2013/11/19 Javascript
JavaScript实现给按钮加上双重动作的方法
2015/08/14 Javascript
每天一篇javascript学习小结(Date对象)
2015/11/13 Javascript
jQuery属性选择器用法示例
2016/09/09 Javascript
vue如何实现observer和watcher源码解析
2017/03/09 Javascript
利用Vue v-model实现一个自定义的表单组件
2017/04/27 Javascript
js canvas实现QQ拨打电话特效
2017/05/10 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
Angular.js中数组操作的方法教程
2017/07/31 Javascript
ionic 3.0+ 项目搭建运行环境的教程
2017/08/09 Javascript
JS异步函数队列功能实例分析
2017/11/28 Javascript
对angularjs框架下controller间的传值方法详解
2018/10/08 Javascript
Node.js Event Loop各阶段讲解
2019/03/08 Javascript
微信小程序bindinput与bindsubmit的区别实例分析
2019/04/17 Javascript
如何实现小程序tab栏下划线动画效果
2019/05/18 Javascript
关于layui导航栏不展示下拉列表的解决方法
2019/09/25 Javascript
vue 限制input只能输入正数的操作
2020/08/05 Javascript
基于python yield机制的异步操作同步化编程模型
2016/03/18 Python
Python基于Tkinter模块实现的弹球小游戏
2018/12/27 Python
python实现定时发送qq消息
2019/01/18 Python
python 字典操作提取key,value的方法
2019/06/26 Python
PyQtGraph在pyqt中的应用及安装过程
2019/08/04 Python
OpenCV中VideoCapture类的使用详解
2020/02/14 Python
Python实现CAN报文转换工具教程
2020/05/05 Python
酒店温馨提示语
2015/07/14 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
Spark SQL 2.4.8 操作 Dataframe的两种方式
2021/10/16 SQL Server
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python
《吸血鬼:避世 血猎》官宣4.27发售 系列首款大逃杀
2022/04/03 其他游戏