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实现tab键进行选择后enter键触发click行为
Mar 29 jQuery
JS与jQuery实现子窗口获取父窗口元素值的方法
Apr 17 jQuery
jQuery使用正则验证15/18身份证的方法示例
Apr 27 jQuery
jquery Ajax实现Select动态添加数据
Jun 08 jQuery
jQuery实现简单的手风琴效果
Apr 17 jQuery
基于jquery实现多选下拉列表
Aug 02 jQuery
jquery实现用户登陆界面(示例讲解)
Sep 06 jQuery
jQuery实现的简单无刷新评论功能示例
Nov 08 jQuery
jquery.pagination.js分页使用教程
Oct 23 jQuery
jquery实现下载图片功能
Jul 18 jQuery
JQuery复选框全选效果如何实现
May 08 jQuery
jQuery实现简单全选框
Sep 13 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
Yii PHP Framework实用入门教程(详细介绍)
2013/06/18 PHP
ThinkPHP的I方法使用详解
2014/06/18 PHP
Nginx服务器上安装并配置PHPMyAdmin的教程
2015/08/18 PHP
PHP框架Laravel中实现supervisor执行异步进程的方法
2017/06/07 PHP
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
js展开闭合效果演示代码
2013/07/24 Javascript
jQuery中remove()方法用法实例
2014/12/25 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
基于JQuery和原生JavaScript实现网页定位导航特效
2017/04/03 jQuery
Vue中父组件向子组件通信的方法
2017/07/11 Javascript
vue绑定设置属性的多种方式(5)
2017/08/16 Javascript
react build 后打包发布总结
2018/08/24 Javascript
vue 实现在函数中触发路由跳转的示例
2018/09/01 Javascript
今天,小程序正式支持 SVG
2019/04/20 Javascript
JS数组扁平化(flat)方法总结详解
2019/06/24 Javascript
layer关闭当前窗口页面以及确认取消按钮的方法
2019/09/09 Javascript
node.JS事件机制与events事件模块的使用方法详解
2020/02/06 Javascript
Python入门篇之面向对象
2014/10/20 Python
Python+django实现文件上传
2016/01/17 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
详解python分布式进程
2018/10/08 Python
matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
2021/01/05 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
使用CSS3的appearance属性改变元素的外观的方法
2015/12/12 HTML / CSS
css3 transform及原生js实现鼠标拖动3D立方体旋转
2016/06/20 HTML / CSS
利用Canvas模仿百度贴吧客户端loading小球的方法示例
2017/08/13 HTML / CSS
衰败城市英国官网:Urban Decay英国
2020/04/29 全球购物
建筑专业自荐信
2013/10/18 职场文书
职业生涯规划怎么写
2013/12/29 职场文书
绿化先进工作者事迹材料
2014/01/30 职场文书
党员干部2014全国两会学习心得体会
2014/03/10 职场文书
扬尘污染防治方案
2014/06/15 职场文书
大学计划书范文800字
2014/08/14 职场文书
升学宴学生致辞
2015/09/29 职场文书
高中班主任工作总结(范文)
2019/08/20 职场文书
Arthas排查Kubernetes中应用频繁挂掉重启异常
2022/02/28 MySQL