Sie sollten diese Zeile ändern:
var sqlDb = require('./DBLayer/db.js');
zu
var sqlDb = require('./DBLayer/db.js').sqlDb;
oder um diese Zeile zu ändern:
exports.sqlDb = sql;
zu
exports = sql;
Erklärung: In Node, wenn Sie Folgendes tun:var sqlDb = require('./DBLayer/db.js');
es macht sqlDb zum exports
Objekt.
In Ihrem Code haben Sie also exports.sqlDb = sql
. Der Compiler hat Recht Exporte haben keine Ausführungsfunktion. exports haben nur 1 var, exports.sqlDb
.
Bonus-Tipp: Wenn Sie wirklich möchten, dass Ihr Code funktioniert, ändern Sie app.js
nicht Sie können dies am Ende Ihres Moduls hinzufügen:
exports.execute=function(){
return sql.execute.call(sql,arguments)
}