【发布时间】:2016-07-05 15:27:59
【问题描述】:
所以,我正在构建一个 EmberJS 应用程序,并且我有一个包含多个组件(例如 messages 和 questions)的路由。
每个组件都使用dyn-widget mixin 进行扩展,允许用户在屏幕上拖动它,因为它们作为画布上的窗口呈现给用户。
为了存储每个 dyn-widget 窗口的信息,我使用了三个 Ember Data 模型:一个 dyn-widget 存储任何小部件共享的值(位置、大小...),以及一个 dyn-widget/questions 和一个 @987654327 @ 包含有关如何设置小部件以及与“父”dyn-widget 模型的一对一关系的附加信息。
路由有一个相应的控制器,允许用户启动新窗口。然后控制器创建一个dyn-widget/whatever 模型以及关联的dyn-widget 模型,所有内容都存储在本地存储中。
但是,当我尝试在路由中实现 model() 函数时,我发现如果没有 hacky 解决方案,我真的无法返回多个不同的模型。我曾想过将模型直接放入我的组件中,但这打破了以下模式:
Components are isolated entities that consume data through their
interface, react to data changes that flow via data binding, and
possibly send up named actions.
那么我应该如何处理呢?解决这个问题的非 hacky、Ember 方法是什么?
谢谢!
【问题讨论】:
标签: ember.js