Breeze和Durandal可观察插件

Breeze和Durandal可观察插件,breeze,hottowel,durandal-2.0,Breeze,Hottowel,Durandal 2.0,我一直在尝试热毛巾水疗,并成功地获得了一个视图模型和使用ko.observates工作的视图。调用Breeze executeQuery的结果使用myObservable(data.results)加载到observable中,我在视图中看到了结果 读过Durandal即将发生的变化后,我想我会尝试使用observables插件。我的问题是微风的结果不再出现在我的视野中。我已经阅读了Durandal中的“绑定普通Javascript对象”文档,但这对Breeze没有帮助,John Papa的“升

我一直在尝试热毛巾水疗,并成功地获得了一个视图模型和使用ko.observates工作的视图。调用Breeze executeQuery的结果使用myObservable(data.results)加载到observable中,我在视图中看到了结果

读过Durandal即将发生的变化后,我想我会尝试使用observables插件。我的问题是微风的结果不再出现在我的视野中。我已经阅读了Durandal中的“绑定普通Javascript对象”文档,但这对Breeze没有帮助,John Papa的“升级到Durandal 2.0”也没有详细说明

使用observable插件时,如何将Breeze EntityQuery的结果输入observable


有人能给我指出正确的方向吗?

这对《杜兰达尔》的作者罗布来说是个好问题。上次他在做这个的时候,有一件事他想做,让微风高兴。不知道他是怎么离开的。

肯定是给罗布的。我也会问的。与此同时,我正在进行一个项目,在该项目中,我将同时使用这些技术,以便能够提供一个指针:

您可以将breeze实体加载到普通javascript属性中,Durandal将该属性转换为可观察属性。然而,它将是breeze交付的淘汰观测值的容器,因此您需要相应地编码

在下面的示例中,我使用的是typescript和工作单元模式,但这应该有些熟悉-这里的工作单元函数从executeQuery返回一个承诺:

public respondent: Respondent;

private loadData(id: string){

var self = this;

this.uow.respondents.withId(id).then(
    function(data : Respondent){
         self.Respondent = data;
    }
).fail(erorrHandler)
})

这对我来说暂时有效。唯一的副作用是,根据我有限的经验,我无法让durandal和knockout在计算观察值或自定义绑定中一起玩-因此我不得不在某些地方使用不同的解决方案(有点挫败对象!!)

@沃德——我认为你可以超越微风,把它的实体变成可见物,让杜兰达尔来处理(这是Angular的情况吗?)——但我不知道这是否会对微风的其他好东西产生副作用,比如跟踪幕后的变化

另一件需要注意的事情是,如果在调用observables插件后对Durandal Binder执行任何操作(如添加i18n库),则需要重新包含原始绑定设置,以免覆盖它们