vue项目中获取外部js,并使用其中方法

因为项目需要,需要从外部获取js,然后在vus项目中使用其中的方法。

如果我们想引用一个库,但是又不想让webpack打包,并且又不影响我们在程序中以CMD、AMD或者window/global全局等方式进行使用,那就可以通过配置externals。这个功能主要是用在创建一个库的时候用的,但是也可以在我们项目开发中充分使用。

在webpack中配置externals

我自己使用的代码如下:


  • 第一步:在最外部的index.html文件中,在<script>标签中引入外部js链接
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1, maximum-scale=1, user-scalable=no">
    <title></title>
    <script src="http://********/WA.js"></script>

</head>


  • 第二步:利用了webpack中的externals特性,可以加载非打包文件的代码,具体使用方法是,在build文件夹中的webpack.base.conf.js文件中,添加externals,其中的第一个WA是定义的名称,方便之后在其他的vue组件中引用,第二个WA是指引入js文件的输出名称。

    module.exports = {
    context: path.resolve(__dirname, '../'),
    entry: {

    app: './src/main.js'

    },
    // 核心是下面的代码:即通过externals引入非打包js文件
    externals: {

    'WA':'WA',

    },
    ....// 下面省略


  • 第三步:在具体页面中引用WA。比如我在我的mission.vue中,可以这样写:

    import WA from 'WA'

这样就可以在文件中引用相关方法了。比如这里就直接使用了刚刚引入的外部js中的init()方法:

created() {
      // 初始化引入的js
      WA.init({ ui: false })
  },

相关推荐