我想使用 package.json 中的配置变量作为其他包设置的基础,这样每个项目只需设置一次,而不是在 package.json 中的多个点设置。
$npm_package_[key]
方法适用于 scripts
部分中的条目,但不适用于其他包字段。
目前我有
"config": {
"dirs": {
"src": "./path/to/src/folder",
"build": "./path/to/build/folder"
}
},
并在 macOS 上以
$npm_package_config_dirs_src
(或 ${npm_package_config_dirs_src}
)访问它们。
变量在脚本的上下文中工作:
"scripts": {
"clean": "rm -rf $npm_package_config_dirs_build",
…
},
但不能作为没有明确命令的其他包字段设置的基础,例如在 parceljs:
"source": [
"$npm_package_config_dirs_src/css/styles.css",
"$npm_package_config_dirs_src/js/main.js"
],
"targets": {
"default": {
"distDir": "$npm_package_config_dirs_build"
}
},
此处未替换变量,
npm run build
失败并显示消息:@parcel/core: $npm_package_config_dirs_src/css/styles.css does not exist.
我错过了什么?或者还有其他更合适的方法吗?