NPM环境变量不能在windows中工作

NPM environment variables not working in windows?

本文关键字:工作 windows 环境变量 不能 NPM      更新时间:2023-09-26

在我的包。我试图使用版本控制编译更少的代码,像这样:

"scripts" {
...
"build:css": "lessc --source-map css/index.less build/$npm_package_name.$npm_package_version.css",
...
}
问题是输出文件返回为
$npm_package_name.$npm_package_version.css
不是

my-project.1.0.0.css

我读到过你可以做

%npm_package_name%.%npm_package_version%.css

但这对我不起作用。

谁知道为什么变量不工作?这些变量在Windows中有效吗?如果有,我该如何让它们工作?

使用cross-var:

实现跨平台

"scripts" { ... "build:css": "cross-var lessc --source-map css/index.less build/$npm_package_name.$npm_package_version.css", ... }

这个包。

{
  "name": "x",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo '"Error: no test specified'" && exit 1"
  },
  "author": "",
  "license": "Unlicense"
}
但是请注意,环境变量替换发生在NPM回显之后,所以输出看起来像这样:
C:'try'x>npm test
> x@1.0.0 test C:'try'x
> echo %npm_package_name%.%npm_package_version%.css
x.1.0.0.css