【发布时间】:2017-10-10 00:16:49
【问题描述】:
我很难区分视图模板引擎,例如 EJS 和 AngularJS。我确实了解视图模板引擎背后的概念,但我认为 Angular 几乎相同。在使用 IntelliJ 构建项目时,它让我可以制作 express 提供的应用程序结构并选择视图模板引擎。因为我不关心 HTML 语法,所以我选择了 EJS 而不是 Jade。现在,由于我有更多的用户角色,我需要根据用户的角色更改视图。我尝试使用带有控制流(if-then)的 EJS 来做这件事,但发现 EJS 上的文档真的很差。这就是为什么我决定检查 AngularJS,因为我所有的同事都在使用它。
据我目前所知,我将在 AngularJS 中使用控制器来控制视图的外观以及应填充哪些数据。
在使用 AngularJS 时我需要视图模板引擎吗?有什么好处吗?
我的代码使用了routes,现在看起来像这样:
/* GET /register page. */
router.get('/', function(req, res) {
res.render('enter.html');
});
(我已经制作了 .html 扩展名以使用 EJS 呈现)
那么,我将不再使用 res.render(),而是使用 AngularJS 支持的控制器和视图?
【问题讨论】:
-
一个关键区别是每个的典型环境。 AngularJS 是客户端模板渲染,而 Express 是服务器端。不过,有一些重叠的可能性(两种环境都有 EJS 的变体)。
-
@JonathanLonowski,所以实际上,我需要确定要在模板引擎中显示哪个视图以及要显示哪些视图部分,而其他客户端动态部分(例如管理选项卡和一些 javascript 视图验证)应该用 AngularJS 编写?