Utiliser le même langage de templating en frontend et en backend
Voyons donc un exemple rapide avec la stack MEAN. Côté Express :
app.get('/partials/:name.html', function (req, res) {
res.render(path.join('partials', req.params.name));
});
Le chemin sera bien évidemment à adapter selon votre cas : je suppose ici que les templates concernés se trouvent dans un dossier
partials
, lui-même enfant direct de votre répertoire de vues principal.Pour récupérer le tout sur Angular, il suffira donc tout simplement de faire quelque chose de ce genre :
var app = angular.module('myApp', ['ngRoute']);
app.config(['$routeProvider', function ($locationProvider, $httpProvider, $routeProvider)
{
$routeProvider
.when('/some-route', {
templateUrl: '/partials/some-template.html',
controller: 'SomeCtrl'
})
.when('/some-other-route', {
templateUrl: '/partials/some-other-template.html',
controller: 'SomeOtherCtrl'
});
}]);
Ceci vous donne l'avantage non négligeable de pouvoir traiter certains aspects de vos partials depuis le backend, si vous en avez le besoin.
J'oubliais : bonne année à tous !