美文网首页
webpack之外部资源和模块引用使用方式切换

webpack之外部资源和模块引用使用方式切换

作者: kingller | 来源:发表于2019-01-21 15:28 被阅读0次

上一篇文章我们讲到了如何打造自己的Javascript类库
接下来我们发现使用外部资源引用方式后,修复一些bug和新增一些功能必须要等到下一版本发布,在项目中才能使用,而且修改类库后本地运行的代码无法即时刷新,影响我们的开发效率,于是我们又想在开发时把我们的外部资源引用方式切换回模块引用。

添加命令

package.json

"start": "webpack-dev-server --mode=development --open",
"start:module": "webpack-dev-server --mode=development --open --externals=false"

start:外部资源引用模式。
start:module :模块引用模式。当我们需要切换回模块引用方式时,运行这个命令启动程序。

webpack.config.js

const HtmlWebpackPlugin = require('html-webpack-plugin');
const args = require('node-args');
const isExternals = args.externals !== false;

module.exports = {
  //...
  plugins: [
    //...
    new HtmlWebpackPlugin({
            filename: 'index.html',
            template: `${__dirname}/src/template.ejs`,
            //...
            // 添加参数IS_EXTERNALS,后面母版页会使用
            IS_EXTERNALS: isExternals,
        }),
  ],
  // 如果非外部资源引用方式,设置externals为undefined
  externals: isExternals ? {
        //...
        'my-library': 'myLibrary'
    } : undefined,
};

template.ejs 母版页

<% if (htmlWebpackPlugin.options.IS_EXTERNALS) { %>
<script crossorigin src="https://cdnjs.cloudflare.com/ajax/libs/react/16.7.0/umd/react.production.min.js"></script>
//...
<script crossorigin src="https://cdnjs.cloudflare.com/ajax/libs/my-library/13.0.0/my-library.min.js"></script>
<% } %>

根据上面传入的IS_EXTERNALS参数,设置是否需要引用外部资源

至此,我们完成了切换外部资源和模块引用两种使用方式。

相关文章

  • webpack之外部资源和模块引用使用方式切换

    上一篇文章我们讲到了如何打造自己的Javascript类库接下来我们发现使用外部资源引用方式后,修复一些bug和新...

  • Angualr1.X使用Webpack打包混淆时的问题

    在引入Webpack模块化编程后,Angular的模块间的引用建议还是直接写字符串,不要使用模块名.name的方式...

  • 02-webpack的使用

    webpack的使用 Webpack的介绍 Webpack 是当下最热门的前端资源模块化管理和打包工具。它可以将许...

  • 解决html-webpack-plugin img src为[o

    问题: 使用 webpack 插件 html-webpack-plugin, HTML代码中引用图片资源 最后被转...

  • Webpack+react+es6创建项目

    Webpack 是当下最热门的前端资源模块化管理和打包工具. 使用webpack 搭建react 项目(es6) ...

  • link和@import区别

    页面使用css的方式主要有3种,标签行内引用,页面头部样式引用,外部样式引用,其中外部样式引用有link和impo...

  • raw-loader的使用

    如果你的webpack版本是5,可以使用新的资源模块asset/source 在使用webpack导入文件时,偶尔...

  • 金山WPS

    npm切换版本 webpack将抽离出来的css文件如何引用到文件中 webpack和gulp区别及webpack...

  • 对webpack的看法

    webpack是一个模块打包工具,可以使用webpack管理个人的模块依赖,并编译输出模块所需的静态资源,它能够很...

  • JavaScript的内部引用和外部引用知识

    使用软件:ATOM 一、内部引用 二、外部引用 总结 内部引用和外部引用的区别是,内部引用只有html,外部引用有...

网友评论

      本文标题:webpack之外部资源和模块引用使用方式切换

      本文链接:https://www.haomeiwen.com/subject/xaoqjqtx.html