我正在使用node.js构建我的第一个应用程序。
此应用程序使用Express作为带有Jade模板引擎的Web应用程序框架。
我需要设计一个屏幕,显示从MongoDB数据库中检索的项目列表。
最初显示项目列表时,数据从控制器发送,格式化以玉石模板完成。
但是,我还需要通过ajax调用更新项目列表。
我发现很难为这个特定的流程设计合适的方法。
我有以下选项:
- 从ajax响应中发送项目列表。
- 使用javascript渲染UI组件 - 添加css类,准备html。
醇>
然而,这种方法非常脆弱。此外,很多代码都会在网络浏览器中公开。
我来自JSF,它重新渲染组件,这是一个内置功能。</ p>
可以将node.js,ajax和重新渲染组合在一起吗?
答案 0 :(得分:1)
你可以制作另一个路由器,如&#34; partialList&#34;只放置列表的HTML并在ajax请求中填充并使用Jade模板呈现该列表。然后在浏览器中(假设您使用jQuery),您可以向http://example.com/partialList发出请求,您将只获得HTML,然后使用.html()方法将该HTML放到列表必须的位置。
$.get('http://example.com/partialList', function (listHTML) {
$('#list-placeholder').html(listHTML);
});
答案 1 :(得分:1)
您应该使用现有的客户端Web开发框架,例如AngularJS,它将自动完成所有这些。
答案 2 :(得分:0)
简短的回答是否定的。节点在服务器上。您必须在客户端上呈现。你需要一些j来渲染ajax,无论如何。
您的替代方案是将客户端重定向到一个新页面,其中html呈现了您喜欢它的方式,这将感觉非常漂亮1999