在计算属性中加载数据

时间:2016-11-26 09:12:14

标签: ember.js

我有一个代表购买表格的余烬组件。您可以创建以其他货币支付的旧购买。转换后的购买金额取决于所选择的货币和购买日期。所以转换的金额是我的计算属性。汇率来源是外部Web服务通过自定义适配器提供的模型,它们按日期检索。这意味着当日期更改时,我可能需要调用该服务。所有这些都发生在计算属性中,但我知道在其中加载数据并非最佳实践,所以我想知道我有什么替代方案。

1 个答案:

答案 0 :(得分:1)

建议遵循Data Down Actions Up原则,这意味着您不应该在组件中具有与数据相关的逻辑。您应该从组件向控制器发送操作,处理控制器中与数据相关的事物,然后通过组件参数将数据传递回组件。

如果我认为数据处理在概念上与组件相关并且组件将被重用,那么我自己有时会违反此规则。在这种情况下,我最好将其封装在组件中。

如果您需要更具体的答案,请发布您的代码。