我的项目中有几个css文件。我想将它们组合成一个仅通过NPM (没有gulp或grunt)。
我听说过ccs-merge和其他节点模块,但没有看到任何实际的例子。 实现它的最佳和最简单的方法是什么?
编辑:
这是我的项目结构:
Client/
├──js/
|──component1
├──one.css
├──one.js
|──component2
├──two.css
├──two.js
├──output/
└──package.json
我想直接从NPM脚本将我的所有CSS文件合并到一个文件中。 这是我目前的package.json
"scripts": {
"start": "watchify -o Client/js/bundle.js -v -d Client/js/app.jsx",
"build": "browserify . -t [envify --NODE_ENV production] | uglifyjs -cm > Client/js/bundle.min.js",
"concat-css": "css-concat Client/js/*.css > Client/js/styles.css"
},
concat-css命令不起作用。 “失败了......'css-concat ......'
答案 0 :(得分:12)
这是我能想到的最简单的例子。给出以下项目结构和文件:
project/
├──css/
| ├──one.css
| └──two.css
├──output/
└──package.json
<强>项目/ CSS / one.css 强>:
.one {
color: red;
}
<强>项目/ CSS / two.css 强>:
.two {
text-align: center;
}
<强>项目/的package.json 强>:
{
"name": "project",
"version": "1.0.0",
"scripts": {
"concat-css": "cat css/* > output/all.css"
}
}
您可以在终端中运行:
$ npm run concat-css
> project@1.0.0 concat-css /path/to/project
> cat css/* > output/all.css
导致 project / output / all.css :
.one {
color: red;
}
.two {
text-align: center;
}
这显然过于简单化,但它应该展示这个概念。您可以通过npm run scripts将多个shell命令组合在一起,甚至可以从其他运行脚本中调用运行脚本。
Here's a very good article about this topic by Keith Cirkel. No grunt or gulp needed.