2017-09-25 94 views
0

時,我有一個數據庫對象(database.js):類型錯誤:數據庫是不是看起來像這樣一個構造函數初始化構造

//create the database 
function Database(host, dbuser, dbpassword){ 
    this.host = host; 
    this.dbuser = dbuser; 
    this.dbpassword = dbpassword; 
    this.connection = null; 
} 

Database.prototype = { 
    connection: function(){ 
     this.connection = mysql.createConnection({ 
      host: host, 
      user: dbuser 
     }); 
    }, 
    createDatabase: function(){...}; 

然後我導入此對象爲使用我的主要app.js需要聲明

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

然而,當我試圖建立我的數據庫對象,我得到一個類型錯誤數據庫是不是構造

var connection = new db('localhost','root'); 
connection.connection(); 

我在這裏做錯了什麼?我閱讀了原型,看起來我並不缺乏該部門的任何東西,所以它似乎與我的要求聲明有關。

+0

因爲node.js現在默認支持ES6,所以使用'class'。它會讓你的代碼更容易,你會避免這樣的錯誤。 –

+0

但是,有沒有什麼原因,這個原型不會工作?我必須在課堂上閱讀,但我認爲原型仍然受支持...... – dankqheed

+0

你是如何將'Database'導出到你的文件'database.js'中的? –

回答