Javascript 需要来自另一个文件的函数和变量=nodejs

Javascript 需要来自另一个文件的函数和变量=nodejs,javascript,node.js,node-mysql,Javascript,Node.js,Node Mysql,我正试图从我的应用程序中卸下一部分,但遇到了这个问题 这是我的密码: // foo.js: var mysql = require('mysql'); module.exports = { home: function () { return mysql.createConnection({ host : '2.2.2.2', user: 'admin', password: 'xxxxxx', database : 'mlb'

我正试图从我的应用程序中卸下一部分,但遇到了这个问题

这是我的密码:

// foo.js:

var mysql = require('mysql');

module.exports = {
  home: function () {
    return mysql.createConnection({
      host : '2.2.2.2',
      user: 'admin',
      password: 'xxxxxx',
      database : 'mlb'
    });
  }

// bar.js:

var dbConnect = require('./foo.js');

dbConnect.home.query('SELECT * from batters;', function(err, res, body) {
  if (err) throw err;
  var string_data = JSON.stringify(res);
  var jsonData = JSON.parse(string_data);
  console.log(jsonData);
});

我收到的错误是
未定义不是函数
。。。我做错了什么?

我需要在调用其方法之前实例化导入的函数

bar.js的正确代码为:

var dbConnect = require('./test.js');

var connection = dbConnect.home();

connection.query('SELECT * from batters;', function(err, res, body) {
  if (err) throw err;
  var string_data = JSON.stringify(res);
  var jsonData = JSON.parse(string_data);
  console.log(jsonData);
});

我需要先实例化导入的函数,然后再调用其方法

bar.js的正确代码为:

var dbConnect = require('./test.js');

var connection = dbConnect.home();

connection.query('SELECT * from batters;', function(err, res, body) {
  if (err) throw err;
  var string_data = JSON.stringify(res);
  var jsonData = JSON.parse(string_data);
  console.log(jsonData);
});

我需要先实例化导入的函数,然后再调用其方法

bar.js的正确代码为:

var dbConnect = require('./test.js');

var connection = dbConnect.home();

connection.query('SELECT * from batters;', function(err, res, body) {
  if (err) throw err;
  var string_data = JSON.stringify(res);
  var jsonData = JSON.parse(string_data);
  console.log(jsonData);
});

我需要先实例化导入的函数,然后再调用其方法

bar.js的正确代码为:

var dbConnect = require('./test.js');

var connection = dbConnect.home();

connection.query('SELECT * from batters;', function(err, res, body) {
  if (err) throw err;
  var string_data = JSON.stringify(res);
  var jsonData = JSON.parse(string_data);
  console.log(jsonData);
});

家不需要这样:

dbConnect.home()

dbConnect.home()

dbConnect.home()

dbConnect.home().query

那么,您是否试图找出未定义的内容?是不是
dbConnect.home
?是不是
dbConnect.home.query
?如果您在Firefox中运行,它甚至可能是
console.log
。是哪一个?该错误至少应该向您提供失败的原因,一些简单的调试语句应该告诉您其余的情况。此外,在查询IIRC、mysql连接之前,需要先连接它们,没有一行失败是
dbConnect.home.query('SELECT*from batters;'),函数(err、res、body){
表示queryWell的箭头,您是否试图找出未定义的确切内容?是否为
dbConnect.home
?是否为
dbConnect.home.query
?如果您在Firefox中运行,它甚至可能是
console.log
。到底是哪个?错误至少应该为您提供失败代码,以及一些简单的调试语句uld会告诉你其余的。此外,IIRC、mysql连接需要先连接,然后才能查询它们,没有一行失败是
dbConnect.home.query('SELECT*from batters;'),函数(err、res、body){
表示queryWell的箭头,您是否试图找出未定义的确切内容?是否为
dbConnect.home
?是否为
dbConnect.home.query
?如果您在Firefox中运行,它甚至可能是
console.log
。到底是哪个?错误至少应该为您提供失败代码,以及一些简单的调试语句uld会告诉你其余的。此外,IIRC、mysql连接需要先连接,然后才能查询它们,没有一行失败是
dbConnect.home.query('SELECT*from batters;'),函数(err、res、body){
表示queryWell的箭头,您是否试图找出未定义的确切内容?是否为
dbConnect.home
?是否为
dbConnect.home.query
?如果您在Firefox中运行,它甚至可能是
console.log
。到底是哪个?错误至少应该为您提供失败代码,以及一些简单的调试语句uld会告诉您其余的内容。此外,IIRC、mysql连接需要先连接,然后才能查询它们,没有故障行是
dbConnect.home.query('SELECT*from batters;'),函数(err、res、body){
指示查询的箭头