在.env文件节点js中发送params

时间:2018-03-14 20:35:53

标签: javascript node.js

我有我的文件users.env inner routes / querys / users.env

 module.exports = {
  GET_USERS: "SELECT * FROM users",
  CREATE_USER: "INSERT INTO users ("id", "first_name", "last_name", "active") VALUES (NULL, '%PARAM1%', '%PARAM2%', '1');"
}

是否可以将params1和params 2发送到.env文件并返回完整的字符串? 我可以让env var string不完整,并在创建函数后将%PARAMS_1%替换为value,但我需要其他选项

1 个答案:

答案 0 :(得分:1)

你可以这样做:

module.exports = (param1, param2) => {
  GET_USERS: "SELECT * FROM users",
  CREATE_USER: (!!param1 && !!param2) ? 
    `INSERT INTO users ("id", "first_name", "last_name", "active") VALUES (NULL, '${param1}', '${param2}', '1');` : 
    "INSERT INTO users (\"id\", \"first_name\", \"last_name\", \"active\") VALUES (NULL, '%PARAM1%', '%PARAM2%', '1');"
}

在require中接受2个参数并在字符串中连接它们,或者如果传入的参数是假的,则返回原始值。您需要更改调用代码以使用类似:

const userFunctions = require('./env')(); // raw string
const populatedUserFunctions = require('./env')('hello', 'world'); // with param1 and param2