Cambia vele.js Viste EJS per utilizzare le estensioni .html invece di estensioni .ejs?
-
21-12-2019 - |
Domanda
È possibile configurare le app Veale.js per utilizzare estensioni .html
anziché .ejs
(ma ancora utilizzare ejs view engine
)?
sails new app
crea ./views/home/index.ejs
e ./views/layout.ejs
.
Mi piacerebbe cambiare le estensioni su .html
ma tenere tutto il resto che funziona allo stesso modo.
IE: ora avrei generatori ./views/home/index.html
e ./views/layout.html
e la home page sarà ancora iniettata nella pagina Layout, come da normale.
Come posso configurare questo per favore?
Soluzione
nel tuo config/views.js
:
engine: {
ext: 'html',
fn: require('ejs').renderFile
},
.
Sembra che il futuro supporto per questa funzione non sia garantito, dal momento che lo hanno rimosso da Documenti, quindi utilizzare con cautela.
Altri suggerimenti
Un altro approccio
Le vele forniscono i modelli EJS per impostazione predefinita.Per sovrascrivere questo e utilizzare i file .html, ecco una soluzione semplice.Nell'app per le vele, vai a config / rottes.js.Vedrai il seguente codice lì
module.exports.routes = {
/***************************************************************************
* *
* Make the view located at `views/homepage.ejs` (or `views/homepage.jade`, *
* etc. depending on your default view engine) your home page. *
* *
* (Alternatively, remove this and add an `index.html` file in your *
* `assets` directory) *
* *
***************************************************************************/
'/': {
view: 'homepage'
}
/***************************************************************************
* *
* Custom routes here... *
* *
* If a request to a URL doesn't match any of the custom routes above, it *
* is matched against Sails route blueprints. See `config/blueprints.js` *
* for configuration options and examples. *
* *
***************************************************************************/
};
.
Rimuovere il percorso verso '/' come mostrato di seguito.Tienilo vuoto
Nuove rotte.js sarà simile a
module.exports.routes = {
//Remove '/' :)
};
.
Okay !!!Ora è finito Puoi usare i tuoi file HTML nell'app per le vele.Metti il tuo indice.html nella cartella Asset.Le vele ora caricheranno le viste da qui :)
nelle ultime vele.js 0.11, anche questo è valido:
engine: 'ejs',
extension: 'html',
.
Per verificare come lo fanno, in /node_modules/sails/lib/hooks/views/configure.js:
if (typeof sails.config.views.engine === 'string') {
var viewExt = sails.config.views.extension || sails.config.views.engine;
sails.config.views.engine = {
name: sails.config.views.engine,
ext: viewExt
};
}
.