2013-09-28 24 views
4

试图了解如何在node.js express应用中实现AngularJS。建立快递后,我需要两两件事:路由和模板引擎,所以通常我会需要做如下设置该应用使用玉模板引擎:使用AngularJS在node.js中查看模板和路由

app.register('.html', require('jade')); 

...然后我会成立路线可能是这样的:

app.get('/', function(req, res) { 
    res.render('index', function(err, html){ 
     // ... 
    }); 
}); 

但是,如果我想使用AngularJS模板,我还需要Jade吗?我读过AngularJS路由如何配置,这是否意味着使用AngularJS时不再需要使用app.get()来声明路由的上述方法?

回答

3

如果在为客户端呈现页面之前(即在某些情况下,您可以在使用PassportJS时在Jade模板中添加用于身份验证的window.user对象),则不需要为Angular布局添加任何额外内容),你完全可以完全抛弃玉,让快速静态中间件使您的index.html

app.use(express.static(path.join(__dirname, 'public'))); 

显然,在public/的文件是你所有的角文件,包括index.html。请务必要求path模块进行路径标准化,但这不是必需的。

之后,Angular会照顾其余的。这意味着您的所有路线都是在Angular应用程序中定义的,而不是在Express路线中定义的。