寻找关于从dust.js模板帮助者发出异步请求的一些想法和反馈:
Dust.js可以从模板帮助程序发出异步请求,但实际上使用它们是个好主意吗?考虑这种情况...
特定页面需要呈现几个api请求。在页面的路径控制器中,单个异步api请求获取页面的大部分数据,并将数据传递给要呈现的模板。在模板中有几个可重复使用且独立的灰尘助手(可以放在任何页面上),这些助手可以自己创建异步请求以显示其组件。
在这种情况下,所有的粉尘助手必须等到控制器发出的请求完成才能进行调用(模板渲染开始时)。
理想情况下(不包括页面上所有数据的一个端点)所有请求都应发生在路由控制器中以避免同步调用,否则请求链将是1)控制器请求2)灰尘帮助请求3 )嵌套/依赖粉尘助手请求。
缺点:
优点:
你有什么想法?谢谢!
答案 0 :(得分:0)
如果您考虑仅在服务器端使用模板,我会将所有内容移动到控制器中。我喜欢有一个控制器"控制"视图层所需的所有数据。
如果你考虑在浏览器中使用灰尘模板(所以从cleint调用ajax),从我的角度来看,从架构视图来看,两种方式都是合理的。 但在决定之前,我会问自己一些关于用户体验的问题:
完成所有来电的时间需要多长时间 控制器?有时最好将部分数据发送给用户和 给他一些东西可以查看并稍后加载其他组件 更好的用户体验。但如果开销不超过几毫秒,我 将决定在控制器中构建我的页面上下文。
页面中显示的数据在哪里?你是否需要它? 页面的一部分?或者用户应滚动查看其他数据集? 如果数据没有立即消耗,我会决定离开它 给客户。