Merge branch 'main' of https://git.faronear.org/npm/basend-envar
This commit is contained in:
		
						commit
						536045efc4
					
				
							
								
								
									
										10
									
								
								envar.js
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								envar.js
									
									
									
									
									
								
							@ -18,7 +18,7 @@ module.exports = {
 | 
				
			|||||||
      // 在 uniapp 里,在 main.js/App.vue 里都可以访问 process.env.NODE_ENV。在 页面.vue 的代码区域,可以访问,但在模版区域,不能访问。在浏览器中时,不能访问。
 | 
					      // 在 uniapp 里,在 main.js/App.vue 里都可以访问 process.env.NODE_ENV。在 页面.vue 的代码区域,可以访问,但在模版区域,不能访问。在浏览器中时,不能访问。
 | 
				
			||||||
      // 在 uniCloud 里,存在 process.env,但不存在 process.env.NODE_ENV
 | 
					      // 在 uniCloud 里,存在 process.env,但不存在 process.env.NODE_ENV
 | 
				
			||||||
      global.envar.prodev = global.envar.prodev || process.env.NODE_ENV || 'development' // server = require('express')(); server.get('env') === server.settings.env === process.env.NODE_ENV
 | 
					      global.envar.prodev = global.envar.prodev || process.env.NODE_ENV || 'development' // server = require('express')(); server.get('env') === server.settings.env === process.env.NODE_ENV
 | 
				
			||||||
      global.inDev = global.envar.prodev === 'development' // 为了方便从配置文件里,根据 inDev 来设置不同参数,例如 port: inDev ? 8080 : undefined
 | 
					      global.inDev = global.envar.prodev !== 'production' // 为了方便从配置文件里,根据 inDev 来设置不同参数,例如 port: inDev ? 8080 : undefined // 用 production 测试,防止 NODE_ENV 未定义
 | 
				
			||||||
      console.info(`<<<<<<<< Configuring [${global.envar.prodev}] Environment <<<<<<<<`)
 | 
					      console.info(`<<<<<<<< Configuring [${global.envar.prodev}] Environment <<<<<<<<`)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      console.info('- Loading Configuration Files (读取配置文件)')
 | 
					      console.info('- Loading Configuration Files (读取配置文件)')
 | 
				
			||||||
@ -46,14 +46,14 @@ module.exports = {
 | 
				
			|||||||
        console.warn(`  - unrecognized envarFiles!`)
 | 
					        console.warn(`  - unrecognized envarFiles!`)
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      if (Array.isArray(global.envar.Commander_Option_List)) {
 | 
					      if (Array.isArray(global.envar.commanderOptions)) {
 | 
				
			||||||
        console.info('- Loading Command Line Parameters (载入命令行参数)')
 | 
					        console.info('- Loading Command Line Parameters (载入命令行参数)')
 | 
				
			||||||
        commander.version(global.envar.Base_Version || '0.0.1', '-v, --version') // 默认是 -V。如果要 -v,就要加 '-v --version'
 | 
					        commander.version(global.envar.Base_Version || '0.0.1', '-v, --version') // 默认是 -V。如果要 -v,就要加 '-v --version'
 | 
				
			||||||
        for (let [key, param, desc] of global.envar.Commander_Option_List || []) {
 | 
					        for (let [key, param, desc] of global.envar.commanderOptions || []) {
 | 
				
			||||||
          commander.option(param, `${desc} Default = "${global.envar[key]}"`)
 | 
					          commander.option(param, `${desc} Default = "${global.envar[key]}"`)
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        commander.parse(process.argv)
 | 
					        commander.parse(process.argv)
 | 
				
			||||||
        delete global.envar.Commander_Option_List
 | 
					        delete global.envar.commanderOptions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        // console.log('- Merging Command Line Parameters into Configuration (把命令行参数值合并入配置)')
 | 
					        // console.log('- Merging Command Line Parameters into Configuration (把命令行参数值合并入配置)')
 | 
				
			||||||
        for (let key in commander) {
 | 
					        for (let key in commander) {
 | 
				
			||||||
@ -72,7 +72,7 @@ module.exports = {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  /* 读取动态配置文件中的环境变量。
 | 
					  /* 读取动态配置文件中的环境变量。
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  get_dynamic_envar ({ dynamicEnvarFile = 'envar-base-dynamic.js' } = {}) {
 | 
					  get_dynamic_envar ({ dynamicEnvarFile = './envar-base-dynamic.js' } = {}) {
 | 
				
			||||||
    // dynamicEnvarFile should be absolute or relative to the node process's dir.
 | 
					    // dynamicEnvarFile should be absolute or relative to the node process's dir.
 | 
				
			||||||
    const fullpath = path.resolve(dynamicEnvarFile)
 | 
					    const fullpath = path.resolve(dynamicEnvarFile)
 | 
				
			||||||
    if (fs.existsSync(fullpath)) {
 | 
					    if (fs.existsSync(fullpath)) {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user