2

有谁知道在另一个视图模型中获取视图模型实例的最简单方法是什么。更具体地说,我想将一个视图模型的实例加载到另一个视图模型中,以便后者可以调用前者的方法。

durandal 是否保留在合成过程中使用的所有视图模型的列表?

我想解决这个问题的一种方法是应用 durandal 支持的 pub/sub 模式。另一种方法可能是在敲除和 dataFor 实用程序函数的帮助下手动获取视图模型。但是,我想知道是否有办法显式获取组合视图模型的实例。

注意:我的模块公开了一个构造函数而不是那个单例对象

4

1 回答 1

2

您可以通过使用 RequireJS 来引入视图模型,就像使用另一个模块/视图模型一样。但是您真的想避免这种情况用于视图模型通信,而是使用事件

一个视图模型将通过事件聚合器发布一个事件,然后另一个视图模型订阅该事件。

在此处查看“使用应用程序范围的消息传递”部分。

于 2013-05-14T13:30:55.600 回答