webpack 的项目使用script动态导入第三方库

最近有个项目需要导入腾讯云的图片验证js库

官方文档https://007.qq.com/quick-start.html?ADTAG=acces.cfg

https://ssl.captcha.qq.com/TCaptcha.js

像这种只提供script方式引入的第三方库,在webpack项目中使用,

1、可以使用webpack.ProvidePlugin 【提供了npm安装方式的库没问题,没提供npm安装的库有可能有问题】

这种方法使得第三方库被全局使用无法做到按需加载
然后,在webpack.config.js中,添加如下代码:

//这种方法使得_被全局使用无法做到按需加载
new webpack.ProvidePlugin({

_: 'lodash'

}),

//以下lodash通过下载到本地来使用,同样那些没有提供npm安装的第三方库可以这样做
 new webpack.ProvidePlugin({
	_:path.resolve(__dirname, './src/lib/lodash/lodash.js'),
})

2、动态加载script标签,只在需要用到第三方库的模块或者页面引入script【本文重点】

var head = document.getElementsByTag('head')[0];
var script = document.createElement('script');
script.id='lib-id';
script.type='text/script';
head.appendChild(script);
script.src='https://ssl.captcha.qq.com/TCaptcha.js';
script.onload=function(){

//这里就是当第三方库加载成功后的代码逻辑了
}

3、expose-loader用法

https://www.webpackjs.com/loaders/expose-loader/

你可能感兴趣的:(javaScript,webpack,webpack,第三方库)