有人知道如何在 .npmrc 文件中设置默认环境变量吗?我尝试这样做:
registry=${myEnvVariable:-https://myregistry.com}
还有这个:
defaultRegistry=https://myregistry.com
registry=${myEnvVariable:-defaultRegistry}
这些解决方案不起作用,因为我收到“无法替换配置中的 env”
看起来你可能必须围绕 npm 编写一个包装器脚本:
~/bin/npm
:
#!/bin/sh
defaultRegistry=https://myregistry.com
myRegistry=${myEnvVariable:-$defaultRegistry}
export myRegistry
exec /usr/bin/npm "$@"
~/.npmrc
:
registry=${myRegistry}
npmrc
手册页有这样的内容:
所有 npm 配置文件都是 ini 格式的
参数列表。 可以使用key = value
替换环境变量。为了 示例:${VARIABLE_NAME}
prefix = ${HOME}/.npm-packages
没有提及特定于 shell 的条件逻辑,因此不幸的是 .npmrc 中似乎不支持它。