91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

通過webpack引入第三方庫的方法

發布時間:2020-10-05 23:58:03 來源:腳本之家 閱讀:392 作者:aishuishui2066 欄目:web開發

一般來說,引入第三方庫有一下三種情況:

  1. 通過CDN引入;
  2. 通過npm 安裝并引入;
  3. 第三方js文件就在本地

通過CDN

這是最簡單的一種方式,例如引入高德地圖,可以直接把以下代碼放在index.html文件底部,這種情況與webpack無關,因為webpack的入口文件并不在此處

<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.8&key=您申請的key值"></script>

npm

通過npm install安裝的包會放在node modules文件夾下,當使用時,可以直接在用到的文件頂部引入進來,例如import或者require。但如果每個模塊化的文件都會用到,那么每個文件都要去引入這個第三方文件,很繁瑣,這時候就可以用webpack的插件:ProvidePlugin,可以理解這個插件的作用就是把第三方庫引入,且它的作用域是全局的。

例如引入jquery

new webpack.ProvidePlugin({
 $: 'jquery',
 jQuery: 'jquery'
})

那么就可以用$和jQuery了,它們兩個都表示jquery,需注意的是$和jQuery后面的值(jquery)必須和npm install jquery中的jquery保持一致,不然會找不到。

本地JS庫文件

會有這么一種情況:第三方的js文件就在本地,怎么通過webpack引入呢?比如第二種jquery的情況,

new webpack.ProvidePlugin({
 $: 'jquery',
 jQuery: 'jquery'
})

這樣寫肯定會找不到jquery了,因為它并不在node modules中,這時可以用webpack配置中的resolve選項,給jquery指定一個別名,并配置其路徑。

假如我們的jquery.js文件放在dist文件夾下面

resolve:{
  alias: {
   $: path.resolve(__dirname, './dist/jquery.js'),
   jQuery: path.resolve(__dirname, './dist/jquery.js'),
  }
}

這樣就可以了。

通過loader

除了ProvidePlugin這個插件,還有一個imports-loader可以完成引入第三方庫的工作。

test來指定哪個文件需要引入第三方庫,通過options配置jquery。然后打包后可以看出,打包后的app.js文件變大了。

module: {
    rules: [
      {
        test: path.resolve(__dirname, "./src/app.js"),
        use: "imports-loader"
        options:{
          $:'jquery'
        }
      }
    ]
  }

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

合肥市| 台东县| 沙田区| 南平市| 聂荣县| 银川市| 庆城县| 海兴县| 临夏市| 东莞市| 许昌市| 萝北县| 措美县| 南阳市| 巴塘县| 蓬安县| 柘荣县| 苍山县| 莱阳市| 伊宁县| 齐齐哈尔市| 杭锦后旗| 文山县| 遵义市| 固安县| 长顺县| 昌平区| 光泽县| 昭通市| 岫岩| 宁波市| 林州市| 五寨县| 龙泉市| 齐河县| 陇川县| 资阳市| 朝阳市| 通道| 德阳市| 怀仁县|