Hiện nay tôi đang thiết lập kết nối khách hàng của tôi cho node-mysql
bằng cách làm như sau trong tôi app.js
và đặc biệt config/environment.js
:Tôi nên xác định ứng dụng khách MySQL của mình ở đâu trong ứng dụng Node.js (Express)?
var client = mysql.createClient({
user: 'USER',
database: 'DATABASE',
password: 'PASSWORD',
host: 'HOST'
});
app.configure(function(){
...
app.set('client', client);
...
});
Sau đó, trong mã khách hàng của tôi, tôi chỉ cần gọi app.settings.client
sử dụng MySQL client.
Tôi không chắc đây có phải là phương pháp phù hợp hay không và chắc chắn không hoạt động khi tôi đang thử nghiệm vì tôi cần một phiên bản đang chạy của ứng dụng.
Mọi đề xuất?
Sử dụng 'app.set ('client')' thay vì 'app.settings.client'. Và nó sẽ làm việc với thử nghiệm, bạn chỉ cần tiêm một 'app' trống vào thử nghiệm đơn vị của bạn như là một phần của chế nhạo – Raynos
@Raynos Làm thế nào để bạn tiêm một' ứng dụng 'trống rỗng? –
tùy thuộc vào mã của bạn. [Tôi làm một cái gì đó như thế này] (https://github.com/Raynos/nCore-example/blob/master/test/routes-home.js) nhưng tôi cho rằng kiến trúc của bạn hoàn toàn khác. – Raynos