希望我正确地描述了这一点。我正在制作一个Windows应用商店应用,我有以下设置
WinJS.Namespace.define("Model",
{
WorkOrders: new WinJS.Binding.List(),
selectedWorkOrder: {}
});
WinJS.Namespace.define("ViewModel",
{
WorkOrders: Model.WorkOrders,
selectedWorkOrder: Model.selectedWorkOrder
})
当加载页面时,ajax请求填充WorkOrders列表,在填充后,用户可以选择一个,此时Model.selectedWorkOrder被设置为Model.WorkOrder中的一个对象。
我希望ViewModel.selectedWorkOrder反映Model.selectedWorkOrder是什么,但它似乎只绑定到原来的空对象,我怎样才能使它绑定到该属性(即使对象发生变化,如指针)。 / p>
我正在做这样的事情来设置selectedWorkOrder
Model.selectedWorkOrder = results[i];
谢谢!
答案 0 :(得分:0)
不确定我是否理解你的问题。
您正在寻找的内容是某种事件ViewModel.selectedWorkOrder
无论Model.selectedWorkOrder
有什么,对吧?
如果是这种情况你可以尝试RxJS-WinJS(我实在不太熟悉),或者你可以让ViewModel.selectedWorkOrder
一个方法来获取并返回Model.selectedWorkOrder
在任何给定时间内的任何内容
这样的事情:
WinJS.Namespace.define("Model",
{
WorkOrders: new WinJS.Binding.List(),
selectedWorkOrder: {}
});
var _getWorkItem = function(){
return Model.selectedWorkItem;
}
WinJS.Namespace.define("ViewModel",
{
WorkOrders: Model.WorkOrders,
selectedWorkOrder: _getWorkItem
})