代码之家  ›  专栏  ›  技术社区  ›  Woppi

不必在package.json中显式声明就可以执行包选项吗?

  •  1
  • Woppi  · 技术社区  · 6 年前

    package.json ,例如,此包使用说明:

    node ./app.js | pino-mongodb [options]
    

    所以在我的 包.json ,如果我实现它,它将像:

    "start": 'node ./app.js | pino-mongodb --username=myUser --password=myPw'
    

    在git存储库中没有公开凭据的情况下,如何处理这样的包?

    样品包: https://github.com/pinojs/pino-mongodb

    1 回复  |  直到 6 年前
        1
  •  2
  •   Patrick Hund    6 年前

    您可以使用环境变量,如下所示:

    包.json

    "start": "node ./app.js | pino-mongodb --username=${USERNAME} --password=${PASSWORD}"
    

    USERNAME=johndoe PASSWORD=secret666 npm run start
    

    注意 :这在MacOS和Linux中运行良好, for Windows, see related question .

    如果您的环境变量存储在 .env source 命令,如下所示:

    包.json

    "start": "source .env && node ./app.js | pino-mongodb --username=${USERNAME} --password=${PASSWORD}"