【发布时间】:2026-02-08 05:35:01
【问题描述】:
我正在尝试使用 npm 工具和包将 LESS 文件和 ES6 文件复制并编译/转换到另一个目录。
这是我的基本结构:
-src
-components
-component1
component1.js // es6 code
styles.less
-component2
component2.js // es6 code
styles.less
-component3
component3.js // es6 code
styles.less
这是所需的新目录结构:
-lib
-component1
component1.js // es5 code
styles.css
-component2
component2.js // es5 code
styles.css
-component3
component3.js // es5 code
styles.css
对于 es6 转译,我使用的是 babel,效果很好:
"build:js": "cross-env NODE_ENV=production babel ./src/components --out-dir ./lib --ignore spec.js"
但我在处理 LESS 文件时遇到了困难。我知道我可以使用cpx 来复制文件并保留结构:
"build:less": "cpx \"./src/components/**/*.less\" ./lib"
但我想在处理它们时复制它们并将其从LESS 编译为CSS。
通过管道传递的每个文件的模块转换都有一个 -t 参数,但我找不到合适的模块来传递它们。
我试过lessc 和lessify,但似乎不太合适。
"build:less": "cpx \"./src/components/**/*.less\" ./lib -t [less_compiler_here?]"
我不介意使用webpack 或任何其他模式来实现这一点。
【问题讨论】:
标签: node.js reactjs less postcss npm-scripts