Vue中引入第三方JS库的四种方式

目录
  • 一、绝对路径直接引入,全局可用
  • 二、绝对路径直接引入,配置后,import 引入后再使用
  • 三、webpack中配置 alias,import 引入后再使用
  • 四、webpack 中配置 plugins,无需 import 全局可用
  • 结论

我们以 jQuery 为例,来讲解

一、绝对路径直接引入,全局可用

主入口页面 index.html 中用 script 标签引入:

<script src="./static/jquery-1.12.4.js"></script>

这样,其实就已经可以在项目中使用 jQuery 了。

mounted () {
  console.log($)
}

可以看到,我们是可以正常打印出 jQuery 的。

由于我的项目开启了 ESLint 检测,所以也会报一个 warning[警告] :'$' is not defined 。

我们可以让 ESLint 不检查这一行: 加了 /* eslint-disable */ 以后,就不会报那个警告了。 二、绝对路径直接引入,配置后,import 引入后再使用 第一种方法有一个弊端就是:我们每一个使用了 $ 的地方,都要再前面加上 /* eslint-disable */ ,这显然是不方便的。

于是,我们有了第二种方法

二、绝对路径直接引入,配置后,import 引入后再使用

还是先在主入口页面 index.html 中用 script 标签引入:

<script src="./static/jquery-1.12.4.js"></script>

然后,我们可以在 webpack 中配置一个 externals

externals: {
  'jquery': 'jQuery'
}

这样,我们就可以在每一个组件中用 import 来引用这个 jquery 了。

import $ from 'jquery'
export default {
  created() {
    console.log($)
  }
}

这样,我们就可以在每一个组件中用 import 来引用这个 jquery 了。 如果你不想在 inde.html 中使用 script 标签来引入 jQuery 的话,我们还有方法

三、webpack中配置 alias,import 引入后再使用

我们不需要在主入口文件 index.html 中引入 jQuery 。我们只需要在 webpack 的配置文件中,在 resolve 中为 jQuery 添加一个 alias[别名] 。

resolve: {
  extensions: ['.js', '.vue', '.json'],
  alias: {
    '@': resolve('src'),
    'jquery': resolve('static/jquery-1.12.4.js')
  }
}

那么,我们就可以在任意组件中,通过 import 的方式来使用 jquery 了。

<script>
import $ from 'jquery'
export default {
  name: 'app',
  created() {
    console.log($)
  }
}
</script>

控制台截图:

四、webpack 中配置 plugins,无需 import 全局可用

在第三种的基础上,如果我们增加一个 plugins 的配置,那么,我们在使用的时候,无需 import $ from 'jquery' 也可以。

resolve: {
  extensions: ['.js', '.vue', '.json'],
  alias: {
    '@': resolve('src'),
    'jquery': resolve('static/jquery-1.12.4.js')
  }
},
plugins: [
  new webpack.ProvidePlugin({
    $: 'jquery'
  })
]

这个时候,我们在项目中,就可以直接使用 $ 了。

<script>
export default {
  name: 'app',
  created() {
    /* eslint-disable*/
    console.log($)
  }
}
</script>

同理,由于我的项目使用了 ESLint ,所以需要在使用了 $ 的代码前添加 /* eslint-disable*/ 来去掉 ESLint 的检查,否则会报错:'$' is not define

结论

第一种和第四种方式使用的时候,不需要 import ,全局直接可用;第二种和第三种方式使用的时候,需要先 import 。

到此这篇关于Vue中引入第三方JS库的文章就介绍到这了,更多相关Vue引入第三方JS库内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • VUE引入第三方js包及调用方法讲解

    VUE引入第三方js包及调用方法 1.首先是第三方js包存放的位置 一定要放在 static 目录下否则引用不到 2.网上查找到的引用第三方包的四种方式 实测部分第三方js包没法使用,较稳定的方式是在 index.html 中引入js包 <script src="static/xxxxx.js"></script> 3.mounted 是初始化加载的方法 可以理解为jquery 中的页面加载完的初始化方法 如果第三方包有初始化需要调用的一些函数等 需要写在mou

  • 如何在 Vue.js 中使用第三方js库

    在诸多 Vue.js 应用中, Lodash, Moment, Axios, Async等都是一些非常有用的 JavaScript 库. 但随着项目越来越复杂, 可能会采取组件化和模块化的方式来组织代码, 还可能要使应用支持不同环境下的服务端渲染. 除非你找到了一个简单而又健壮的方式来引入这些库供不同的组件和模块使用, 不然, 这些第三方库的管理会给你带来一些麻烦. 本文将介绍一些在 Vue.js 中使用第三方库的方式. 全局变量 在项目中添加第三方库的最简单方式是讲其作为一个全局变量, 挂载到

  • Vue cli 引入第三方JS和CSS的常用方法分享

    第一种方法: 直接在index.html中引入 js <script type="text/javascript" src="static/mui.min.js" ></script> css <link rel="stylesheet" href="static/mui.min.css" rel="external nofollow" /> 第二种 在单页面中用impo

  • Vue.js中Line第三方登录api的实现代码

    国际化的项目就会用用到一些第三方的登录api,这次记录一下Line 的! 按步骤来: 注册Line账号就不说了,虽然麻烦,这就自己去想办法了! demo 请狠狠的戳这里 http://download.lllomh.com/cliect/#/product/J417081951162505 一:开发者平台配置 去Line 的开发者平台 新建一个App: https://developers.line.biz/en/ ​ ​ 顺便写好资料: ​ 动态演示: ​ 这要 用到的 就是2个: Chann

  • Vue中引入第三方JS库的四种方式

    目录 一.绝对路径直接引入,全局可用 二.绝对路径直接引入,配置后,import 引入后再使用 三.webpack中配置 alias,import 引入后再使用 四.webpack 中配置 plugins,无需 import 全局可用 结论 我们以 jQuery 为例,来讲解 一.绝对路径直接引入,全局可用 主入口页面 index.html 中用 script 标签引入: <script src="./static/jquery-1.12.4.js"></script

  • angular2中使用第三方js库的实例

    本文以jquery 为例 第一种:有对应的声明文件的 1.用命令安装jQuery的声明文件.(声明文件是为了ide完美智能提示) npm install -D @types/jquery 2.引入jquery import * as $ from 'jquery'; 3.使用 $('body').addClass(''); 第二种:没有声明文件,自定义的js库 1. index.html中引入 js 文件 <script src="/assets/jquery.min.js"&g

  • Vue实现拖拽穿梭框功能四种方式实例详解

    目录 一.使用原生js实现拖拽 二.VUe使用js实现拖拽穿梭框 三.Vue 拖拽组件 vuedraggable 四.Awe-dnd指令封装 一.使用原生js实现拖拽 <html lang="en"> <head> <meta charset="UTF-8" /> <title>Lazyload</title> <style> .drag { background-color: skyblue;

  • Vue 中可以定义组件模版的几种方式

    前端组件化开发已经是一个老生常谈的话题了,组件化让我们的开发效率以及维护成本带来了质的提升. 当然因为现在的系统越来越复杂庞大,所以开发与维护成本就变得必须要考虑的问题,因此滋生出了目前的三大前端框架 Vue.Angular.React. 那今天我们就来看看 Vue 中有哪些定义组件模版的方式以及他们之间的一些差别. 字符串形式 Vue 最简单直接的一种定义组件模版的方式,但是方式写起来很不友好,就像我们以前拼接 HTML 元素是一样的,很痛苦,所以我们并不常用 Vue.component("m

  • JS创建对象的四种方式

    目录 1.通过字面量的方式去创建对象 2.使用new字符创建对象 3.自定构造函数创建对象 4.工厂模式创建对象 创建对象的4种方式: 1.字面量的方式去创建对象 2.使用new字符创建对象 3.自定义构造函数 4.工厂模式创建对象 对象是指:具有属性和方法 1.通过字面量的方式去创建对象 var person1={ name:'柯南', age:12, sex:'男', eat:function(){ console.log("我饿了,想吃饭") }, say:function(){

  • uniapp引入模块化js文件和非模块化js文件的四种方式

    目录 方式1:引入普通的js文件,如user.js 1.1.属性和方法都写在一个变量内部 1.2.也可以单独写 方式2:把user.js放在入口文件main.js中,成为全局方法 方式3:引入第三方的模块化.js文件 方式4:uniapp开发的H5,引入第三方的非模块化.js文件 4.1.nomodule.js 4.2. 并在入口.html文件中引入全局js 4.3.在.vue页面中引用 方式1:引入普通的js文件,如user.js 1.1.属性和方法都写在一个变量内部 const user={

  • vue中引入第三方字体文件的方法示例

    在用vue来写一官网的时候,想引入外部字体文件,毕竟总感觉他自己的字体有点难看,在这里记录下 1.先下载字体文件所需的.ttf文件 我这里想引入的是华文行楷字体 百度后下载了一个3M多的ttf文件 或者https://www.jb51.net/fonts/点击此链接,进行字体下载 2.将字体文件引入 自己定义一个文件夹,放入下载好的.ttf文件 先自己定义一个font.css文件,将下载好的字体文件的路径引入 @font-face { font-family: "华文行楷"; src:

随机推荐