无论运行脚本如何,默认情况下它始终有效

时间:2019-04-25 07:17:54

标签: javascript node.js

始终执行默认值,而不管脚本正在运行。

这是我的代码:

import { Pool } from 'pg';
import config from './../config';

const connectionString = () => {
    switch (process.env.NODE_ENV) {
        case 'development': console.log('0'); return config.db_dev.connectionString;
        case 'production': console.log('1'); return config.db_prod.connectionString;
        case 'test': console.log('2'); return config.db_test.connectionString;
        default: console.log('3'); return config.db_dev.connectionString;
    }
}

export default new Pool({
    connectionString: connectionString(),
    ssl: true,
});

文件package.json

"scripts": {
    "start": "nodemon --exec babel-node src/index.js",
    "devbuild": "SET NODE_ENV=development & babel src --out-dir dev-hyperspotters-backend",
    "build": "SET NODE_ENV=production & babel src --out-dir hyperspotters-backend",
    "test": "SET NODE_ENV=test & mocha --timeout 10000 --require @babel/register"
  },

我在哪里弄错了?

1 个答案:

答案 0 :(得分:1)

似乎connectionString没有传递给函数。

    const connectionString = (process.env.NODE_ENV) => {
        switch(process.env.NODE_ENV){
            case 'development':
                return 0
            case 'production':
                return 1
            case 'test':
                return 2
            default:
                return 3
        }
    }

Pool = {
    connectionString: connectionString(process.env.NODE_ENV),
    ssl: true
}