目前我設置我的客戶端連接的node-mysql
做在下面我app.js
和特殊config/environment.js
:我應該在Node.js(Express)應用程序中定義我的MySQL客戶端?
var client = mysql.createClient({
user: 'USER',
database: 'DATABASE',
password: 'PASSWORD',
host: 'HOST'
});
app.configure(function(){
...
app.set('client', client);
...
});
然後在我的客戶端代碼只需要調用app.settings.client
使用MySQL客戶端。
我不確定這是否是正確的方法,並且當我進行測試時它肯定不起作用,因爲我需要一個正在運行的應用程序實例。
有什麼建議嗎?
使用'app.set('client')'而不是'app.settings.client'。它應該與測試一起工作,你只需要在你的單元測試中注入一個空的'app'作爲嘲諷的一部分 – Raynos 2012-01-06 19:31:26
@Raynos你如何注入一個空的'app'? – 2012-01-06 19:41:59
取決於您的代碼。 [我做這樣的事情](https://github.com/Raynos/nCore-example/blob/master/test/routes-home.js),但我會假設你的架構完全不同。 – Raynos 2012-01-06 19:45:31