首先,我的英語水平很差 我真的很抱歉,發模塊,但不能達到functon
我從其他
DB_OBJ.js
module.exports = (function() {
var _mysql = require('mysql');
var _self = null;
var _connFlag = false;
var _mysqlConfig = {
host: "127.0.0.1",
port: 3306,
user: "tester",
password: "*****",
database: "*****"
};
var _conn = null;
var _init = function(){
_conn = _mysql.createConnection(_mysqlConfig);
_conn.connect(function(err) {
if (err) {
console.log(err);
}
_connFlag = true;
});
};
var db_obj = function (args) {
_self = this;
if (args) {
_mysqlConfig.host = (args["host"]) ? args["host"] : "127.0.0.1";
_mysqlConfig.port = (args["port"]) ? args["port"] : "3306";
_mysqlConfig.user = (args["user"]) ? args["user"] : "*****";
_mysqlConfig.password = (args["password"]) ? args["password"] : "*****";
_mysqlConfig.database = (args["database"]) ? args["database"] : "*****";
}
this.init = function() {
_init();
};
};
return db_obj;
})();
使這個代碼隱藏私人活動&瓦爾
main.js
var db_obj = new require('./DB_OBJ');
db_obj.init();
但是這個代碼錯誤發生的:
TypeError: db_obj.init is not a function
請。讓我知道我該如何解決它?
謝謝。
有這個代碼頗有幾分古怪的(增值經銷商不習慣,功能空函數包裝,一個完全忽略你傳入的參數的初始化函數等)。這個模塊應該做什麼?而不是做這個奇怪的事情,只需創建一個對象來建立連接,並讓你的模塊返回。從這樣的事情開始? http://jsbin.com/hepuwoxeke/edit?js,output –
它只是一些,完整的代碼太多了。我添加了一些更多的代碼'使用args var'來更加清楚它 –
@AlbertYun,在db_obj中沒有任何返回...我更新了我的答案... – zangw