四时宝库

程序员的知识宝库

你真的了解externals吗(exterinal)

首先介绍一下externals:

按照官方文档的解释:

如果我们想引用一个库,但是又不想让webpack打包,并且又不影响我们在程序中以CMD、AMD或者window/global全局等方式进行使用,那么就可以通过配置externals来实现这样的功能。

externals主要是用在创建一个库的时候用的,在我们创建一些库的时候,有些依赖我们可以通过externals来定义多种方式的引用和使用。但是也可以在我们项目开发中充分使用。

假设:我们要开发一个自己的库,里面引用了jquery这个包,经过webpack打包之后,我们会发现,jquery也被打了进来,此时我们的打包文件就会非常大,这个时候为了不把jquery这个第三方的包打进来,我们就可以借助externals的方式来引入。也就是说,自己开发的库本身不打包这个juqery,只是需要用户环境来提供。

使用jquery

externals:{

"jquery": {

commonjs: "jquery",//如果我们的库运行在Node.js环境中,import _ from 'jquery'等价于const _ = require('jquery')

commonjs2: "jquery",//同上 amd: "jquery",//如果我们的库使用require.js等加载,等价于 define(["jquery"], factory);

root: "jQuery"//如果我们的库在浏览器中使用,需要提供一个全局的变量‘_’,等价于 var _ = (window.jQuery) or (jQuery);

}

}

这样配置之后,我们就可以在项目中引用jquery了

import _ from "jquery" const _ = require("jquery")等等方式都可以

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接