19

在 extjs 4.1 中使用代理有两种方法(在我的例子中是服务器代理),一种可以将其绑定到模型或将其绑定到商店。

我对用法有点困惑:将代理绑定到商店和将其绑定到模型有什么区别?

什么情况下会使用一种方式或另一种方式?

4

2 回答 2

21

好的,我在 sencha App Architecture Part 2的文档中找到了它

为模型使用代理:

这样做通常是一种很好的做法,因为它允许您在不需要存储的情况下加载和保存此模型的实例。此外,当多个商店使用相同的模型时,您不必在每个商店上重新定义您的代理。

为商店使用代理:

在 Ext JS 4 中,多个商店可以使用相同的数据模型,即使这些商店会从不同的来源加载它们的数据。在我们的示例中,SearchResults 和 Stations 存储将使用 Station 模型,它们都从不同的位置加载数据。一个返回搜索结果,另一个返回用户最喜欢的电台。为了实现这一点,我们的商店之一将需要覆盖模型上定义的代理。

于 2012-08-15T07:55:32.620 回答
0

我总是在商店而不是模型上使用代理。您是否有要将代理附加到模型的示例/用例?通常我总是声明一个商店并将代理附加到它。

关于 sencha 文档中的示例,我想说这就是它的本意(我猜 ;-))

于 2012-08-15T07:49:56.137 回答