KnockOutJS - 单个视图中的多个 ViewModel

发布于 2022-07-28 22:58:11

我在想我的应用程序现在变得非常大,太大而无法使用单个 ViewModel 处理每个视图。

所以我想知道创建多个 ViewModel 并将它们全部加载到一个 View 中会有多困难。需要注意的是,我还需要能够将 X ViewModel
数据传递到 Y ViewModel 数据中,因此各个 ViewModel 需要能够相互通信或至少相互了解。

例如,我有一个<select>下拉菜单,该选择下拉菜单有一个选择状态,它允许我将所选项目的 ID 传递<select>给单独 ViewModel
中的另一个 Ajax 调用…。

在单个视图中处理多个 ViewModel 的任何要点表示赞赏:)

关注者
0
被浏览
7
1 个回答
  • 面试哥
    面试哥 2022-07-28
    为面试而生,有面试问题,就找面试哥。

    Knockout 现在支持多个模型绑定。该ko.applyBindings()方法采用可选参数 - 将激活绑定的元素及其后代。

    例如:

    ko.applyBindings(myViewModel, document.getElementById('someElementId'))
    

    这将激活限制为具有 ID 的元素someElementId及其后代。

    有关更多详细信息,请参阅文档



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看