【问题标题】:View templates and routes in node.js with AngularJS使用 AngularJS 在 node.js 中查看模板和路由
【发布时间】:2013-09-28 23:02:13
【问题描述】:

试图了解如何在 node.js express 应用中实现 AngularJS。设置 express 后,我需要 2 个东西:路由和模板引擎,所以通常我需要执行以下操作来设置应用程序使用 Jade 模板引擎:

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

...然后我会设置路线可能是这样的:

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

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

【问题讨论】:

    标签: node.js angularjs routes templating-engine


    【解决方案1】:

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

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

    显然,public/ 中的文件都是您的 Angular 文件,包括 index.html。确保也需要 path 模块进行路径规范化,但这不是必需的。

    之后,Angular 会处理剩下的事情。这意味着您的所有路由都在 Angular 应用程序中定义,而不是在 Express 路由中。

    【讨论】:

      猜你喜欢
      • 2016-02-27
      • 1970-01-01
      • 2016-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-08
      • 1970-01-01
      相关资源
      最近更新 更多