我想创建一个div(基本上它会包含列表框),我想在不同的页面中使用div,
这是在duarandal.js中使用的最佳选择吗?
Composition
http://durandaljs.com/documentation/Using-Composition/
的widget
答案 0 :(得分:14)
通常,请考虑将compose
绑定用作模板,将小部件用作用户控件
我的问题中没有足够的信息可以提供一个建议,哪个是您的正确选择,但我会为下面两个提供一些比较,这将使您更容易选择。
<小时/> Durandal的compose binding 可用于渲染或注入一个视图作为另一个视图的一部分。例如,可以定义menu.html,其可以用于显示菜单项。这类似于jQuery模板的概念,或ASP.Net MVC中的“局部视图”。组合视图可以使用父视图模型作为其数据源,也可以拥有自己的视图模型。
当您拥有可在多个地方 的视图和/或视图模型时,撰写绑定最有用。
另一方面, Durandal的小部件在内部使用合成,但旨在抽象小部件的“部分”,以便可以在呈现它的每个视图上以不同方式配置一个小部件。小部件可以有parts
,这些部分可以通过小部件界面公开。
当您想要创建可在多个视图中使用的某些功能时,Durandal小部件最有用,但实现可能会有所不同。