根据Durandal中客户端视图模型的状态在页面视图模型中设置属性

波尔

该页面绑定到页面视图模型,并且在页面内部加载一个绑定到它自己的视图模型的客户端视图。我试图使事情分开,以便页面视图模型仅知道客户端视图的名称,并且不直接与客户端视图模型通信。因此页面视图如下所示:

<div>
    <div data-bind="compose:client"></div> <!-- client is an observable of type string -->
</div>
<!-- some more bindings -->

但是我需要根据客户端视图模型的状态更新页面视图模型上的某些属性,因为这些属性绑定到页面视图(而不是客户端视图)。最好的方法是什么?我应该app.triger在客户端视图模型中使用并在页面视图模型中进行侦听吗?最好只绑定到客户端视图模型(client页面视图模型的属性是对象或函数而不是字符串),并通过通用接口直接从页面视图模型与当前客户端视图模型进行通信,以获得客户端视图模型的状态并进行计算页面视图模型的一些属性?那里有什么最佳实践?

我也将尽量避免使用,preserveContext:true因为这似乎是最不干净的选择。

如果那很重要,我就不会使用路由,因为路由在该页面上将无用。我正在client从页面视图模型手动更改属性。

我使用的是Durandal 2.0。

精神的雷纳

发布/订阅似乎是最好的方法,因为您已经指出了视图模型应该分开。您可以考虑创建一个在客户端/页面之间共享的小模块,而不是使用应用程序进行通信

define(['durandal/events'],function(Events) {
    var myObj = { ... };
    Events.includeIn(myObj);


    return myObj;
});

如果以后决定要进行更紧密的耦合,则还可以向myObj添加一些共享的可观察对象。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在SpringMVC的客户端视图技术中处理JsonResponse

来自分类Dev

在客户端视图中重用数据库模型是否被视为不良做法?

来自分类Dev

从视图设置模型属性

来自分类Dev

在父视图模型中公开子视图模型的属性

来自分类Dev

如何在视图模型中设置总计属性的值

来自分类Dev

获取视图模型属性的模型状态键

来自分类Dev

在视图页面Xamarin中绑定多个模型

来自分类Dev

在 Razor 页面中模型绑定视图组件

来自分类Dev

如何在durandal / knockout中的自定义绑定中访问父视图或根视图模型

来自分类Dev

列表视图模型中的设置命令

来自分类Dev

渲染模型中的视图

来自分类Dev

如何使用视图页面中的列表设置模型中定义的列表:yii 1.1

来自分类Dev

Perforce文件不在客户端视图中

来自分类Dev

在Durandal视图模型中返回函数和返回对象有什么区别?

来自分类Dev

无法模型绑定视图模型中的集合

来自分类Dev

Caliburn.micro-在另一个视图模型中通知属性改变的视图模型

来自分类Dev

其他视图模型中发生某些更改时,视图模型中的WPF MVVM更新属性

来自分类Dev

淘汰页面中的多个视图模型不起作用

来自分类Dev

如何在UWP中重新实例化页面/视图模型?

来自分类Dev

使用Visual Studio从Blazor中的模型生成视图/页面

来自分类Dev

在视图或视图模型中订购元素?

来自分类Dev

视图或视图模型中的哪个先出现?

来自分类Dev

从视图模型中关闭视图[MODAL PAGE]

来自分类Dev

从MVVM中的视图模型关闭视图

来自分类Dev

Flash中的模型视图设计

来自分类Dev

WPF中的嵌套视图模型

来自分类Dev

在Angular 9中,如何在http客户端响应模型中强制设置属性日期类型?

来自分类Dev

在视图模型Wpf中设置图像控制源

来自分类Dev

在视图模型中设置isActive然后选中复选框

Related 相关文章

  1. 1

    在SpringMVC的客户端视图技术中处理JsonResponse

  2. 2

    在客户端视图中重用数据库模型是否被视为不良做法?

  3. 3

    从视图设置模型属性

  4. 4

    在父视图模型中公开子视图模型的属性

  5. 5

    如何在视图模型中设置总计属性的值

  6. 6

    获取视图模型属性的模型状态键

  7. 7

    在视图页面Xamarin中绑定多个模型

  8. 8

    在 Razor 页面中模型绑定视图组件

  9. 9

    如何在durandal / knockout中的自定义绑定中访问父视图或根视图模型

  10. 10

    列表视图模型中的设置命令

  11. 11

    渲染模型中的视图

  12. 12

    如何使用视图页面中的列表设置模型中定义的列表:yii 1.1

  13. 13

    Perforce文件不在客户端视图中

  14. 14

    在Durandal视图模型中返回函数和返回对象有什么区别?

  15. 15

    无法模型绑定视图模型中的集合

  16. 16

    Caliburn.micro-在另一个视图模型中通知属性改变的视图模型

  17. 17

    其他视图模型中发生某些更改时,视图模型中的WPF MVVM更新属性

  18. 18

    淘汰页面中的多个视图模型不起作用

  19. 19

    如何在UWP中重新实例化页面/视图模型?

  20. 20

    使用Visual Studio从Blazor中的模型生成视图/页面

  21. 21

    在视图或视图模型中订购元素?

  22. 22

    视图或视图模型中的哪个先出现?

  23. 23

    从视图模型中关闭视图[MODAL PAGE]

  24. 24

    从MVVM中的视图模型关闭视图

  25. 25

    Flash中的模型视图设计

  26. 26

    WPF中的嵌套视图模型

  27. 27

    在Angular 9中,如何在http客户端响应模型中强制设置属性日期类型?

  28. 28

    在视图模型Wpf中设置图像控制源

  29. 29

    在视图模型中设置isActive然后选中复选框

热门标签

归档