Utiliser express sans moteur de template

Est-il possible de créer une application express (nœud) sans avoir besoin d’un moteur de template tel que jade ou ejs. J’ai un important projet de dernière année à l’université et je vais utiliser node, express, socket.io, mongoDB et websockets. Je ne veux pas m’embarrasser d’avoir à apprendre une langue de template aussi!

Par défaut, Express utilise jade -t, –template et ajoute un support de modèle (jade | ejs). défaut = jade

Est-il possible de créer une application express (nœud) sans avoir besoin d’un moteur de template tel que jade ou ejs

Oui, ça l’est. Vous pouvez simplement utiliser HTML. Ou utilisez simplement EJS. EJS est un sur-ensemble de HTML.

Je ne veux pas m’embarrasser d’avoir à apprendre une langue de template aussi!

Vous pouvez apprendre une langue de template en une journée. Ça va vraiment vous aider. Simplement fais-le. Ça en vaut la peine.

Si vous souhaitez uniquement éviter d’apprendre un autre langage de modèle, vous pouvez essayer les modèles de soulignement. Ce sont juste du javascript, que vous allez apprendre de toute façon.

documentcloud.github.com/underscore/#template

Vous pouvez le configurer avec:

app.register('.html', { comstack: function(str, options){ var comstackd = require('underscore').template(str); return function(locals) { return comstackd(locals); }; } }); 

Le moyen le plus simple de procéder consiste à remplacer la ligne par défaut app.get (‘/’) … par la suivante. Puis mettez toute la magie dans index.html. Cela fonctionnera au moins assez bien pour une application à une seule page.

avec ce qui suit

 app.get('/', function(request, response) { var readFile = "index.html"; var fileContents = fs.readFileSync(readFile); response.send(fileContents.toSsortingng()); }); 

La meilleure option à l’heure actuelle est d’utiliser ejs (moteur) et de le configurer pour accepter et afficher le code HTML:

 app.set('views', path.join(*__dirname*, 'views')) app.set('view engine', 'ejs'); // template engine app.engine('html', require('ejs').renderFile); // turn engine to use html 

Remarque: Tous vos vues ou modèles ont l’extension .html .