How can I use variables in package.json?

前端 未结 3 953
长发绾君心
长发绾君心 2020-12-09 14:44

There is a feature from maven I miss a lot in package.json. In maven .pom file you can define variables in parent project and use them in child project\'s pom files.

相关标签:
3条回答
  • 2020-12-09 15:00

    Define a config object in package.json:

    {
        "name"   : "myapp",
        "config" : { "port" : "3000" },
        ...
    }
    

    And then you can access port value from scrips object with $npm_package_config_port

    {
        "name"   : "myapp",
        "config" : { "port" : "3000" },
        "scripts": {
            "start" : "node --harmony app.js $npm_package_config_port"
        },
        ...
    }
    

    The source full article is here:

    http://www.marcusoft.net/2015/08/npm-scripting-configs-and-arguments.html#npm-configuration

    0 讨论(0)
  • 2020-12-09 15:13

    Any key can be referenced, beginning with $npm_package_ and adding an underscore for every level you go down.

    Example:

    { "name": "appname", "version": "0.0.1"}
    

    name can be access like: $npm_package_name or ${npm_package_name} to delimit within string

    For windows user, name can access like: %npm_package_name%

    0 讨论(0)
  • 2020-12-09 15:22

    On Windows, you should use %variable_name%. For example:

    {
       "name": "app_name",
       "version": "1.0.0",
       "custom": {
          "key": "any value"
       }
    }
    

    You can get it using %npm_package_name%, %npm_package_version% and %npm_package_custom_key%.

    0 讨论(0)
提交回复
热议问题