我刚刚开始将backbone.js 用于一个新的崩溃项目。我的应用程序有一个动态(数据驱动的)用户菜单。每个菜单选项都是一组混合类型的图形/小表格。例如,销售概览菜单选项可以有一个包含 2 个饼图对象、2 个折线图、一个条形图等的页面。我不知道菜单选项将是什么,也不知道每个菜单选项将包含什么。
我正在考虑通过扩展 Backbone.Model - PieModel、BarModel、DispersionModel 等来定义一堆通用模型“类”。以及可以呈现类型对象的相应 View 类 - PieView、LineView 等。然后我可以按照动态配置的定义将它们组合在一起来组装一个页面。每个模型实例的数据 url 都可以通过动态配置轻松生成。
我首先担心的是 Backbone 是否支持混合模型类型的集合。这是由 Collection 的“模型”属性的存在引起的 - 它是否假设同质性?但它也说一个集合可以保存一组有序的模型......模型属性可以是多态的......一种让“模型”保存在集合中的方法。我应该将其视为“模型对象”吗?
对我来说,“页面”确实是此类对象的集合。我想动态创建一个集合并用不同模型类型的实例填充它。然后通过视图渲染它。或者,创建一个包含各种模型对象数组的视图并渲染视图,同时绕过集合。
我将感谢您对我概述的设计的投入,以及对骨干网的良好参考,以及如何在混合模型案例中部署集合的清晰性?也许有一种不同的,更聪明的方式来处理这种情况......
谢谢。