• home > webfront > ECMAS > npm-node >

    package.json中自定义脚本/变量—npm run 参数接手

    Author:zhoulujun Date:

    package json 文件中的 config ,来定义自己的变量作为带有 npm_package_config_ 前缀的npm环境变量。set NODE_ENV=dev&&vue-cli-service build

    我们可以定义 package.json 文件中的 config ,来定义自己的变量作为带有 npm_package_config_ 前缀的npm环境变量,如下:

    "config": {
        "myvariable": "Hello World"
    },

    现在,让我们在env变量中进行检查:

    npm run env | grep npm_package_config_

    输出:

    npm_package_config_myvariable=Hello World

    package.json中scripts配置环境变量区分开发环境和生产环境

    //windows操作系统下:
    "builddev": "set NODE_ENV=dev&&vue-cli-service build",
    "buildprod": "set NODE_ENV=prod&&vue-cli-service build",
     
    //mac操作系统下:
    "builddev": "export NODE_ENV=dev&&vue-cli-service build",
    "buildprod": "export NODE_ENV=prod&&vue-cli-service build",

    具体才参看:《系统环境变量:Node.js环境变量在前端工程配置上的作用

    自定义脚本

    在 package.json 中添加一些自定义脚本:

    "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "node index.js",
        "echo-hello": "echo \"Hello\"",
        "echo-helloworld": "echo \"Helloworld\"",
        "echo-both": "npm run echo-hello && npm run echo-helloworld",
        "echo-both-in-parallel": "npm run echo-hello & npm run echo-helloworld",
        "echo-packagename": "echo $npm_package_name",
        "echo-myvariable": "echo $npm_package_config_myvariable",
        "echo-passargument": "npm run echo-packagename -- \"hello\"",
        "echo-pipedata": "cat ./package.json | jq .name > package-name.txt"
    },

    npm run 命令会显示我们在 package.json 文件中定义的所有脚本。

    运行一个简单的npm脚本: npm run test

    将参数传递给另一个npm脚本

    我们可以使用 -- 将参数传递给 npm 脚本。 在下面的示例中,我们将 hello 作为参数传递给 echo-packagename 脚本。

    npm run echo-passargument
    # Output
    > npm run echo-packagename -- "hello"
    > [email protected] echo-packagename
    > echo $npm_package_name "hello"
    npm-tips-and-tricks hello






    转载本站文章《package.json中自定义脚本/变量—npm run 参数接手》,
    请注明出处:https://www.zhoulujun.cn/html/webfront/ECMAScript/nodejs/8744.html