Initial commit
This commit is contained in:
40
wechat-mini-program/node_modules/mp-html/tools/minifier.js
generated
vendored
Normal file
40
wechat-mini-program/node_modules/mp-html/tools/minifier.js
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
const uglify = require('uglify-js')
|
||||
const through2 = require('through2')
|
||||
|
||||
/**
|
||||
* @description 压缩内联 wxs 脚本
|
||||
*/
|
||||
function wxs () {
|
||||
return through2.obj(function (file, _, callback) {
|
||||
if (file.isBuffer()) {
|
||||
file.contents = Buffer.from(file.contents.toString().replace(/<wxs(.*?)>([\s\S]+?)<\/wxs>/, (_, $1, $2) => {
|
||||
return `<wxs${$1}>${uglify.minify($2, {
|
||||
fromString: true,
|
||||
mangle: {
|
||||
toplevel: true
|
||||
}
|
||||
}).code}</wxs>`
|
||||
}))
|
||||
}
|
||||
this.push(file)
|
||||
callback()
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 压缩 json 文件
|
||||
*/
|
||||
function json () {
|
||||
return through2.obj(function (file, _, callback) {
|
||||
if (file.isBuffer()) {
|
||||
file.contents = Buffer.from(JSON.stringify(JSON.parse(file.contents.toString())))
|
||||
}
|
||||
this.push(file)
|
||||
callback()
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
wxs,
|
||||
json
|
||||
}
|
||||
Reference in New Issue
Block a user