假设我有大量图像模型,并且在任何时候,实际只渲染了 50 个缩略图 View 。我想让用户可以选择从集合中查看另外 50 张随机图像...所以我想给每个图像模型一个 onDisplay 属性。
show-random 方法随机选取 50 个项目并将 onDisplay 设置为 true。其中一些项目可能已经被渲染过……如果没有,则会创建一个新的缩略图 View 并将其附加到图像模型。如果 View 已经呈现,那么它只是重新显示/附加到 DOM。
如果模型有指向它的指针,那么检查 View 是否存在似乎最容易完成。但是我在这里违反了关注点分离吗?
最佳答案
在 MVC 设计模式中,模型不应该知道关于 View 的任何信息。例如,这允许以不止一种方式查看模型,比如作为 HTML 或在 Canvas 元素中呈现。
这可以在下图中看出:
模型只能间接更新 View ,例如通过触发事件。
图像复制自 here .
关于javascript - 在 backbone.js 中,模型知道它的 View 是错误的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9050083/