2016-03-31 2 views
0

Ich arbeite in einer Umgebung, in der nur Express verfügbar ist. Mit hapi benutze ich häufig die server.bind() - Funktion, um sicherzustellen, dass eine Ressource in allen meinen Routen verfügbar ist. Ich finde jedoch keine analoge Funktionalität für Express.Bietet Express einen ähnlichen Mechanismus wie hapi's server.bind()?

Wie werden Ressourcen in Express-Routen referenziert?

Beispiel hapi Code:

var gui_db = new Sqlite3.Database('./gui_test.sqlite'); 
var server = new Hapi.Server(); 
server.connection({ port: 6000 }); 
server.bind({gui_db: gui_db}); 

In einem anderen Zusammenhang kann ich gui_db über this.gui_d b beziehen.

+0

Nie verwendet hapi. Aber vielleicht kann das hilfreich sein: http://expressjs.com/en/api.html#app.locals – tomtom

+0

Sehr interessant. Ich werde es versuchen. –

+0

@tomtom, Danke für den Tipp. Das scheint die ausdrückliche Art zu sein, das zu tun, wonach ich gesucht habe. –

Antwort

0

Danke an @tomtom für die Beantwortung der Frage (wenn auch als Kommentar). Die Antwort lautet app.locals. Solange die App im Kontext angezeigt wird, haben Sie Zugriff auf die Ressource, die an sie gebunden ist.

app.locals.strftime = require('strftime'); 

http://expressjs.com/en/api.html#app.locals

Verwandte Themen