根据不同运行环境配置和组织node.js应用
2024-08-31 08:09:27
- 安装node-config模块
npm install config --save || yarn add config
mkidr config // 创建config文件夹
在config文件夹下面创建config/default.json
文件,这是环境配置的默认的文件,如果没有别的配置,则为默认这里配置。如果要设置自己的环境配置文件,可以直接新建配置文件.json
,如dev环境dev.json
即可,然后在package.json
里面配置相关启动设置,加载对应环境文件即可。
在default.json
里面编辑如下内容,实现项目配置:
{
// Customer module configs
"Customer": {
"dbConfig": {
"host": "localhost",
"port": 5984,
"dbName": "customers"
},
"credit": {
"initialLimit": 100,
// Set low for development
"initialDays": 1
}
}
}
Node.js express vue react native week 前端
在项目代码中进行如下调用:
var config = require('config');
//...
var dbConfig = config.get('Customer.dbConfig'); // 获取数据
db.connect(dbConfig, ...); // 连接数据库
// 检查属性是否存在
if (config.has('optionalFeature.detail')) {
var detail = config.get('optionalFeature.detail');
//...
}
项目package.json
的scripts
脚本文件配置,这里已pm2为例:
"scripts": {
"start": "supervisor app", // 本地环境
"dev": "set NODE_ENV=dev&& npm install && pm2 start app.js", // 线上开发环境
},
PS:
set NODE_ENV=dev&&
运行环境名称和&&
直接不能用空格否则会处理成dev
而报错,模块作者没有对匹配到的数据进行去空格处理,用兴趣的可以自行到该模块下面的libs/config.js
文件里面修改源代码使其支持即可。
最新文章
- 微信小程序之数据绑定(五)
- noConflict
- xmpp整理笔记:xmppFramework框架的导入和介绍
- [ASE][Daily Scrum]11.25
- SessionHelper
- dede 字符串截取
- javascript,jquery(闭包概念)
- WinFrm访问MVC数据
- cocos2d-3.x 创建动画
- LeetCode OJ 41. First Missing Positive
- 用 Swift 编写面向协议的网络请求
- dxxzc团队及队员学号后三位
- android插件化之路
- 如何用ABP框架快速完成项目(4) - 如何正确使用ABP?
- 信号量的基本概念与使用semget,semop
- 什么是DNS攻击?它是如何工作的?
- 谷歌启用抓取JavaScript,应对方案!
- Python: 浅淡Python中的属性(property)
- jQuery.Validator Sample
- On Java 8中文版 英雄召集令