webpack替换html js,html-webpack-plugin-replaceurl

repalce static files' url in html

Html Webpack Replaceurl Plugin

boi.svg?style=plastic

html-webpack-plugin-replaceurl.svg?style=plastic

此插件需配合html-webpack-plugin使用,作用是将html文档中对本地静态资源(js/style)的引用替换为经webpack编译后url。

安装

npm install html-webpack-replaceurl-plugin --save-dev

使用方法

配置webpack:

let HtmlWebpackPlugin = require('html-webpack-plugin');

let HtmlWebpackReplaceurlPlugin = require('html-webpack-replaceurl-plugin');

let webpackConfig = {

entry: {

'main.a':'main.a.js',

'vendor': 'vue'

},

output: {

path: 'dist',

publicPath: '/',

filename: '[name].[hash].js'

},

plugins: [

new webpack.optimize.CommonsChunkPlugin({

name: 'vendor',

filename: 'vendor.js'

}),

new HtmlWebpackPlugin({

inject: false, //此项必须配置为false

}),

new HtmlWebpackReplaceurlPlugin({

// 解析模式:strict-严格模式;loose-宽松模式

mode: 'loose',

js: {

// 文件名前缀

mainFilePrefix: 'main',

// 代替换文件名是否包含hash指纹

useHash: false,

// 文件名分隔符,默认文件名规范为main.[name].js

separator: '.',

// 是否存在common模块

common: true,

// dll文件信息

dll: {

name: 'webapp.dll.js',

url: '/js/webapp.dll.js'

}

},

css: {

// 文件名前缀

mainFilePrefix: 'main',

// 是否使用hash

useHash: false,

// 文件名分隔符,默认文件名规范为main.[name].css

separator: '.'

},

// 是否在url末尾加入时间戳,默认false

urlTimestamp: false

})]

};

上述配置项应用于index.html文件:

Webpack App

编译后的index.html内容为:

Webpack App

模式选择

loose-宽松模式,使用正则匹配,准确度略低;

strict-严格模式,解析html文档100%匹配准确度。

详细原理请参考boi-资源定位。

Repository

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值