车把部分与渲染与模板
Posted
技术标签:
【中文标题】车把部分与渲染与模板【英文标题】:Handlebars partial vs. render vs. template 【发布时间】:2013-01-19 18:30:35 【问题描述】:Fire Up Ember.js screencast 使用 partial
、template
、render
在模板中渲染模板,但我仍然不确定何时使用哪个模板。
在同一截屏视频中,partial
被解释为使用上下文和与当前控制器相关的所有数据,而 render
使用指定控制器的匹配模板、上下文等:
有人可以澄清partial
、template
、render
之间的区别以及何时(示例)使用哪个?
【问题讨论】:
【参考方案1】:我理解的方式,它们的分解方式是这样的:
“render”为您提供了一个完整的视图/控制器/模板上下文以供使用。
一个示例是包含动态片段的顶部导航。内容将在 TopNavController 中维护,并使用“render”插入到应用程序模板中
"partial" 将插入一个模板,但该模板将使用当前上下文而不是它自己的上下文。 Partial 也是框架中较新的部分,意在一定程度上替代使用模板。
一个例子是显示一个用户列表,让每个用户成为列表中相对复杂的部分(头像、姓名、电子邮件等),您可以循环遍历列表并根据每个用户的上下文插入部分用户。
"template" 只是使用当前上下文插入模板。我认为虽然使用模板在模板内渲染片段不是很好的风格,但您应该使用“部分”,尽管模板在大多数情况下会以相同的方式工作。
【讨论】:
这很有帮助,谢谢。能否详细说明render
/partial
与view
与control
之间的区别?【参考方案2】:
ember 网站上给出的chart 很好地比较了渲染、局部和视图。
这是网站中给出的比较的sn-p图像:
【讨论】:
拉出与发帖者问题相关的sn-ps可能不会有什么坏处。 我无法告诉你我通过这个答案来获得该图表多少次。【参考方案3】:就客户端内存使用而言,渲染或部分哪个更好。 假设部分较小的对象会更好
【讨论】:
以上是关于车把部分与渲染与模板的主要内容,如果未能解决你的问题,请参考以下文章