knexfile中的require语句中断了导出

时间:2018-12-31 21:48:39

标签: node.js

这似乎应该可以工作,但是我遇到了一个非常奇怪的问题。我正在尝试将一些实用程序功能snakeToCamelcamelToSnake导入我的knexfile中,以转换输入和输出。但是,我什至没有想要使用它们的原因,因为仅尝试在我的requireknexfile进行操作就可以使我导出{{ 1}}实例失败。

也就是说,在我导入index.js的任何地方,我都会得到一个空对象而不是knex实例。注释掉导入后,我将立即返回knex实例。这是代码:

knex

这是我从中导出knex的地方。在log语句中,始终定义//knexfile.js require('dotenv').config({path: '../../.env'}) const { snakeToCamel, camelToSnake, } = require('../utils/') module.exports = { client: process.env.DB_CONNECTION, connection: { user: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, }, migrations: { directory: '../migrations', }, pool: { min: 0, max: 9, }, // wrapIdentifier: value => camelToSnake(value), // postProcessResponse: result => Array.isArray(result) ? result.map(row => snakeToCamel(row)) : snakeToCamel(result), }

knex

我已经验证了我要导入的功能是否已定义,并且尝试对通过knex从环境变量中引入的//index.js const knex = require('knex')(require('./knexfile')) console.log('at index:', knex); module.exports = knex 的元素进行硬编码,但这似乎都不重要-当knexfile中存在该导入时,dotenv实例的使用者将看到一个空对象。这是怎么回事?

0 个答案:

没有答案