目前,在开发Wordpress主题时,我使用一个简单的批处理文件来uglify我的js。
批处理文件示例makebundle.bat
call uglifyjs^
src/file1.js^
src/file2.js^
-cmo bundle.min.js
然后我使用watch
来构建它
watch makebundle src
一切都很简单。现在,我想使这个特定于Windows的流程更少。为了
reasons outlined here
我不想使用Grunt / Gulp,并且正在考虑尝试
use npm as a build tool。
唯一的麻烦是,我无法找到如何配置uglifyjs
来自package.json
修改
以下是我想在package.json
中使用的一个例子:
{
"uglifyConfig": [
{
"outfile": "bundle.min.js,
"files": [
"src/file1.js",
"src/file2.js"
]
"config": {
"mangle": true,
"compress": true
}
}
]
}
答案 0 :(得分:3)
如果您的构建脚本是节点脚本,则可以使用Uglify的JavaScript API而不是命令行API。您可以轻松require()
package.json,从中读取配置,并将这些值传递给Uglify。
的package.json:
{
...
"scripts": {
"ugly": "node do-uglify.js"
}
...
}
做-uglify.js:
var uglify = require('uglify');
var package = require('./package.json');
var uglifyConfig = package.uglifyConfig;
// Call the UglifyJS Javascript API, passing config from uglifyConfig
答案 1 :(得分:0)
您可以在package.json
的“脚本”部分中添加所需的任何脚本。
{
"name": "my-package",
"version": "1.0.0",
"main": "main.js",
"scripts": {
"ugly": "uglify",
"prepublish" : "uglify"
},
...
您可以为其指定任意名称并使用npm run ugly
运行,或使用predefined hooks之一,例如prepublish