Durandal.js - 组合与小部件

pat*_*tel 8 javascript knockout.js single-page-application durandal

我想创建一个div(基本上它会包含列表框),我想在不同的页面中使用div,

哪个是在duarandal.js中使用的最佳选择?

Composition
Run Code Online (Sandbox Code Playgroud)

http://durandaljs.com/documentation/Using-Composition/

窗口小部件

http://durandaljs.com/documentation/Creating-A-Widget/

Jos*_*iel 14

通常,考虑将compose绑定用作模板,将小部件用作用户控件

在你的问题中,我没有足够的信息提供一个建议,哪个是你的正确选择,但我会为下面两个提供一些比较,这将使你更容易选择.


Durandal的组合绑定可用于渲染或注入一个视图作为另一个视图的一部分.例如,可以定义menu.html,其可以用于显示菜单项.这类似于jQuery模板的概念,或ASP.Net MVC中的"局部视图".组合视图可以使用父视图模型作为其数据源,也可以拥有自己的视图模型.

当你有一个可以使用的视图和/或视图模型撰写的结合是最有用的是在多个地方.

另一方面,Durandal的小部件在内部使用合成,但是旨在抽象小部件的"部分",以便可以在呈现它的每个视图上以不同方式配置一个小部件.小部件可以拥有parts,并且可以通过小部件界面公开这些部分.

当您想要创建可在多个视图中使用的某些功能时,Durandal小部件最有用,但实现可能会有所不同.