Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 包含文件时node.js上的引用错误_Mysql_Node.js - Fatal编程技术网

Mysql 包含文件时node.js上的引用错误

Mysql 包含文件时node.js上的引用错误,mysql,node.js,Mysql,Node.js,我不熟悉node.js。我有两个文件。它们是index.js和db.js 我的index.js是 var connection = require('./db.js'); device = new Device({ id: 93, name: 'test1' }); device.save(); var mysql = require('mysql2'); var mysqlModel = require('mysql-model'); var appModel

我不熟悉
node.js
。我有两个文件。它们是
index.js
db.js

我的
index.js

var connection = require('./db.js');

device = new Device({
    id: 93,
    name: 'test1'
});

device.save();
var mysql      = require('mysql2');
var mysqlModel = require('mysql-model');

var appModel = mysqlModel.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : 'root',
  database : 'db',
}); 

var Device = appModel.extend({
    tableName: "DeviceTable",
});
我的
db.js

var connection = require('./db.js');

device = new Device({
    id: 93,
    name: 'test1'
});

device.save();
var mysql      = require('mysql2');
var mysqlModel = require('mysql-model');

var appModel = mysqlModel.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : 'root',
  database : 'db',
}); 

var Device = appModel.extend({
    tableName: "DeviceTable",
});
在这里,我在运行node index.js时得到了
错误

设备=新设备({

ReferenceError:未定义设备

但是在将以下内容插入到
db.js
本身时,它工作得很好。它执行
insert

var mysql      = require('mysql2');
var mysqlModel = require('mysql-model');

var appModel = mysqlModel.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : 'root',
  database : 'db',
}); 

var Device = appModel.extend({
    tableName: "DeviceTable",
});

var device = new Device({
    id: 93,
    name: 'test1'
});

device.save();

为什么会出现错误?

如果您希望在其他模块中可以访问db模块中的某些内容,则需要使用
module.exports将其公开

添加到
db.js
文件的末尾:

module.exports = {
  appModel : appModel,
  Device : Device
};
然后在
index.js
中,您可以执行以下操作:

device = new connection.Device({
  id: 93,
  name: 'test1'
});

您可以阅读更多有关它的信息。node.js将每个文件视为一个模块。因此,要将任何源文件包含到另一个文件中,您需要在源端导出它,并在导入文件中使用require导入它