Как я могу использовать переменные в package.json?
Есть функция от maven, я скучаю по большому счету в package.json. В файле maven.pom вы можете определить переменные в родительском проекте и использовать их в дочерних проектах pom файлов.
Есть ли что-то подобное в npm? Мы строим модульный проект, и я хочу централизованно определять версии зависимостей и их использовать в соответствующих файлах package.json.
благодаря
Ответы
Ответ 1
На любую клавишу можно ссылаться, начиная с $npm_package_
и добавляя подчеркивание для каждого уровня, который вы понижаете.
Пример:
{ "name": "appname", "version": "0.0.1"}
имя может быть доступным как: $npm_package_name
Для пользователя Windows, имя может получить доступ как: %npm_package_name%
Ответ 2
Определите объект конфигурации в package.json:
{
"name" : "myapp",
"config" : { "port" : "3000" },
...
}
И затем вы можете получить доступ к значению порта из объекта scrips с помощью $npm_package_config_port
{
"name" : "myapp",
"config" : { "port" : "3000" },
"scripts": {
"start" : "node --harmony app.js $npm_package_config_port"
},
...
}
Источник полной статьи здесь:
http://www.marcusoft.net/2015/08/npm-scripting-configs-and-arguments.html#npm-configuration
Вот еще один пример:
http://ianmcnally.me/blog/2016/2/4/variables-in-npm-scripts
Ответ 3
В Windows вы должны использовать %variable_name%
. Например:
{
"name": "app_name",
"version": "1.0.0",
"custom": {
"key": "any value"
}
}
Вы можете получить его используя %npm_package_name%
, %npm_package_version%
и %npm_package_custom_key%
.