const cdn = '//cdn.bootcss.com';
new ReplacePlugin({
      entry: './src/assignment-instructor.html',
      //hash: '[hash]',
      output: `${psweb_path}/assignment-instructor.html`,
      data: {react: `<script src="${cdn}/react/0.14.7/react.min.js"></script>`}
 

##html页面写法

  <!-- replace:react -->
  <script src="../js/react.min.js"></script>
  <!-- endreplace -->
 

详细可参考 replace-webpack-plugin

#2、JS中常量的替换

webpack的配置 在plugins中加入

new webpack.DefinePlugin({
            'process.env.NODE_ENV': '"development"',
            'process.env.webSocket': '"192.168.0.193"'
 

##js中使用:

export const webSocketUrl = `ws://${process.env.webSocket}/notice/websocket`;
 

在js 使用{}将在webpack中定义的变量引入即可。 详细可参考webpack DefinePlugin

npm i --save replace-webpack-plugin 要用提供的字符串替换html内容,只需用以下注释将内容包装起来: <!-- replace:[name] --> blocks you want to replace <!-- endreplace --> 如果为true,则跳过Boolean将保留原始内容(默认为false) 条目String原始文件 输出具有替换数据的String新文件 块标识符和新字符串的数据Object键值对 哈希String应该由入门的WebPack哈希来代替字符串 //webpack.config.js var ReplacePlugin = require ( 'replace-webpack-plugin' ) ; var config = { 该支持全部替换通过字符串或正则表达式在webpack运行的html。 $ npm install --save html-replace-all-webpack-plugin 替换一场比赛 new HtmlReplaceWebpackPlugin ( { matches : [ { match : / <body> / , value : `<body>hello World!` , 替换两场比赛 new HtmlReplaceWebpackPlugin ( { matches : [ { matchStart : / <body> / , matchEnd : / < \/ body> / , value : `<body>hello Wor new webpack.ContextReplacementPlugin( resourceRegExp: RegExp, newContentResource?: string, newContentRecursive?: boolean, newContentRegExp?: RegExp 如果资源(或目录)... 3、使用场景 1 . 在使用 webpack 项目打包的时候,用来将开发环境的请求 URL 替换为 生产环境的 URL 。 2 . 项目统一查找调整页面配色样式 color , 将 #00ff00 替换为 #ff0700 。 3 . 大型项目,依照打包策略在相关文件写入不同内容。 以上说白了就是 用webpack-re 1.什么是插件:用于扩展webpack的功能【每个插件的详细请自己去看文档】 注: loader其实也是一种插件,但它只专注于处理文件这一块 使用步骤:下载插件----->在webpack.config.js的plugins[]实例化----->配置插件[可选] ---->配置文件导入require("插件名称") repalce static files' url in htmlHtml Webpack Replaceurl Plugin此插件需配合html-webpack-plugin使用,作用是将html文档对本地静态资源(js/style)的引用替换为经webpack编译后url。安装npm install html-webpack-replaceurl-plugin --save-dev使用方法配... webpack 打包拷贝复制文件夹并修改文件内容 copy-webpack-plugin, 本文代码copy-webpack-plugin版本为:6.0.1,注意大版本之间可能配置参数不一样。 github地址:https://github.com/webpack-contrib/copy-webpack-plugin 首先安装copy-webpack-plugin和path模块 npm installcopy-webpack-plugin path --save-dev 代码如下: #1、替换html内容。比如替换js的cdn。 ##webpack配置const cdn = '//cdn.bootcss.com';new ReplacePlugin({entry: './src/assignment-instructor.html',//hash: '[hash]',output: `${psweb_path}/assignment-instructor.html`,da... 最近在这段时间刚好在温故下webpack源码,webpack5都出来了,4还不再学习下?这次顺便学习下webpack的常用插件html-webpack-plugin。发现这个插件里面还额外加入了自己的hooks,方便其它插件来实现自己的功能,不得不说作者真是个好人。部分代码如下// node_modules/html-webpack-plugin/index.jsapp(compiler) {//... Webpack 的 DefinePlugin() 函数允许你用另一个令牌替换编译代码的给定令牌。一个常见的用例是,当您不能直接使用 .env 文件时,使用它来定义环境变量。 假设我们的 .env 文件有一个 KEY 值: KEY=123456 我们使用 dotenv 模块,并配置如下 webpack: 'use strict' const webpack = require('webpack'... 配置wepy.config.js 为 plugins 添加 replace 对象,支持单个或者多个规则,多个规则可以以 Array 或者 Object 实现,filter 的对象为生成后文件的路径, 例如'dist/app.js',每个规则也同时支持多个替换条目,同样是以 Array 或者 Obj... 启用 HMR HMR 即 Hot Module Replace ,它是 webpack 内置的 HMR 插件,开启该功能后,可以很大程度提高生产效率,通常与 webpack-dev-server 配合使用。 print.js export default function print(...args) { console.log(...args); index.js console.log('开始执行 index.js'); // 引入该文件 import print from './prin