天道酬勤,学无止境

node-config

如何在打字稿中使用节点配置?(How to use node-config in typescript?)

问题 安装node-config和@types/config后: yarn add config yarn add --dev @types/config 并按照 lorenwest/node-config 中的描述添加配置: // default.ts export default { server: { port: 4000, }, logLevel: 'error', }; 当我尝试在我的应用程序中使用时: import config from 'config'; console.log(config.server); 我收到错误消息: src/app.ts(19,53): error TS2339: Property 'server' does not exist on type 'IConfig'. 回答1 我采用了一种稍微不同的方法——在 JavaScript 中定义变量,并在 TypeScript 中访问它们。 使用以下文件夹结构: ├── config │ ├── custom-environment-variables.js │ ├── default.js │ ├── development.js │ └── production.js └── server ├── config.ts └── main.ts 我在根config/文件夹中定义配置。 例如: //

2022-01-15 12:27:21    分类:技术分享    node.js   typescript   node-config

NodeJS - 配置无法加载自定义环境变量(NodeJS - config cannot not load custom environment variables)

问题 我正在运行config@1.30.0并尝试使用.\config\custom-environment-variables.json从环境变量中获取设置不起作用。 但是,它从.\config\default.json读取就好了。 .\config\custom-environment-variables.json { "key": "app_key" } .\config\default.json { "key": "defaultKey" } 跑步 const config = require('config'); console.log(config.get('key')) 总是打印 defaultKey 但是当我将 config/default 中的key属性设置为空字符串时,什么也不打印。 我该如何解决这个问题? 我试过的 每当我使用 set app_key=newKey 设置环境变量时打开一个新控制台手动设置环境 回答1 配置文件名与您在启动节点时使用的 NODE_ENV 环境变量有关。 该模块的目的是为您要部署到测试、暂存、生产环境的每种类型的环境提供一个配置文件。 如果没有设置或找不到文件,默认接管 例如,对于您将拥有的测试和登台环境。 config/default.json { "key": "default_key" } config/test.json {

2022-01-15 12:11:15    分类:技术分享    node.js   node-config

How to use node-config in typescript?

After installing node-config and @types/config: yarn add config yarn add --dev @types/config And adding config as described in lorenwest/node-config: // default.ts export default { server: { port: 4000, }, logLevel: 'error', }; When I am trying to use in my app: import config from 'config'; console.log(config.server); I am getting the error: src/app.ts(19,53): error TS2339: Property 'server' does not exist on type 'IConfig'.

2022-01-14 22:56:25    分类:问答    node.js   typescript   node-config

NodeJS - config cannot not load custom environment variables

I am running config@1.30.0 and I am attempting to get settings from the environment variables using .\config\custom-environment-variables.json does not work. However, it reads from the .\config\default.json just fine. .\config\custom-environment-variables.json { "key": "app_key" } .\config\default.json { "key": "defaultKey" } running const config = require('config'); console.log(config.get('key')) always prints defaultKey but prints nothing when I set the key property in config/default to an empty string. How can I resolve this? What I have tried Opened a new console anytime I set the

2022-01-09 02:20:32    分类:问答    node.js   node-config

如何在运行时或部署时设置 env var 以选择正确的配置(How to set env var at runtime or deployment to select the right config)

问题 1. 总结问题 我们正在使用一个配置模块(节点),它允许我们使用我们的 firebase 托管应用程序设置各种配置选项,例如数据库设置或其他 api 端点设置。 如果 APP_ENV 变量设置为 'dev',则它指向 dev api 的实例和数据库设置,与 'test' 和 'prod' 相同。 在容器中运行时,我们只需要一个 shell 脚本来设置 APP_ENV 然后运行服务器,并选择正确的配置设置。 我们如何使用 Firebase 托管来做到这一点? 使用:https://github.com/lorenwest/node-config 2. 提供背景,包括您已经尝试过的内容 查看文档,一无所获。 3. 显示一些代码 https://github.com/lorenwest/node-config 4. 描述预期和实际结果,包括任何错误消息 预期:根据环境(开发、测试、生产)部署到 Firebase 并让网络应用访问正确的资源(api 端点、数据库设置)。 回答1 我面临着类似的问题。 我使用NODE_CONFIG_ENV来覆盖NODE_CONFIG //for production process.env.NODE_CONFIG_ENV = "default"; //for development process.env.NODE_CONFIG_ENV =

2021-10-25 09:42:56    分类:技术分享    firebase   google-cloud-platform   node-config

Node-config 不会在 Heroku 中使用来自 custom-environment-variables.json 的变量(Node-config won't use variables from custom-environment-variables.json in Heroku)

问题 我将 node-config 模块用于 mongo 连接字符串和 jwt 键。 例如: if(!config.get('jwtPrivateKey')){ throw new Error('FATAL ERROR: jwtPrivateKey is not defined'); 我的custom-environment-variables.json文件如下所示: { "jwtPrivateKey": "video-app_jwtPrivateKey", "db": "video-app_db" } default.json { "db": "default db", "jwtPrivateKey": "default key" } production.json { "db": "production db", "jwtPrivateKey": "production key" } 长话短说 - 尽管环境变量是在 heroku 中设置的,但 node-config 不会查看custom-environment-variables.json设置的值。 我可以更改 NODE_ENV 并获取相关 json 文件的硬编码值,但从未使用过环境变量,这似乎与文档相矛盾 回答1 我遇到过同样的问题。 从自定义环境变量中读取 heroku 需要从键中删除连字符。 所以自定义环境变量.json

2021-10-24 09:53:57    分类:技术分享    node.js   heroku   environment-variables   node-config

How to set env var at runtime or deployment to select the right config

1. Summarize the problem We are using a configuration module (node) that allows us to set various configuration options, for example database settings or other api endpoint settings with our firebase hosted app. if the APP_ENV variable is set to 'dev', then it points to the dev api's instances and database settings, same with 'test', and 'prod'. When running in a container, we simply have a shell script that sets APP_ENV and then runs the server, and the right configuration settings are chosen. How do we do this with Firebase hosting? Using: https://github.com/lorenwest/node-config 2. Provide

2021-10-08 12:26:29    分类:问答    firebase   google-cloud-platform   node-config

Node-config won't use variables from custom-environment-variables.json in Heroku

I'm using the node-config module for mongo connection strings and jwt keys. For example: if(!config.get('jwtPrivateKey')){ throw new Error('FATAL ERROR: jwtPrivateKey is not defined'); My custom-environment-variables.json file looks like: { "jwtPrivateKey": "video-app_jwtPrivateKey", "db": "video-app_db" } default.json { "db": "default db", "jwtPrivateKey": "default key" } production.json { "db": "production db", "jwtPrivateKey": "production key" } long story short - although the environment variables are set in heroku, node-config doesn't look at the values set in custom-environment-variables

2021-09-01 04:17:10    分类:问答    node.js   heroku   environment-variables   node-config

WARNING: NODE_ENV value of 'test ' did not match any deployment config file names

Receiving this warning on running a node.js app despite all testing suggesting everything fine. I've included the below code in my app to fault find: console.log('NODE_ENV: ' + config.util.getEnv('NODE_ENV')); console.log('NODE_CONFIG_DIR: ' + config.util.getEnv('NODE_CONFIG_DIR')); And the output in terminal is: NODE_ENV: test NODE_CONFIG_DIR: C:\Users\[username]\OneDrive - [Company Name]\Documents\projects\[project name]\server\config Terminal Output Inside that folder (verified by copying and pasting the URI into explorer) are two files: default.json test.json Config folder contents That

2021-05-07 07:37:53    分类:问答    node.js   node-config