3

场景:我有一个返回当前登录用户详细信息的 URL。IE

  • 一条记录
  • 不需要清单

我有的选择:

  1. 每次执行手动ExtJS Ajax 调用,必须在我需要回调等的任何地方插入代码。
  2. 一次创建一个ExtJS 存储 ,每次都从存储实例中获取第一条记录。

问:有更好的选择吗?我正在使用 ExtJS 4.1。

4

2 回答 2

4

你不需要进入底层细节来做这样的事情;使用标准工具。定义一个模型,为它分配一个您需要的类型的代理,然后加载它。请参阅文档:http ://docs.sencha.com/ext-js/4-1/#!/api/Ext.data.Model

于 2012-08-03T21:41:44.373 回答
1

你为什么每次都做一个ajax调用?

做一次,并将其分配为全局变量?

Ext.Ajax.request({
    url: 'page.php',
    params: {
        id: 1
    },
    success: function(response){
        var text = response.responseText;
        window.user = Ext.JSON.decode(text);
        my.custom.launchFunction();//does your viewport etc for you
    }
});    

完成此操作后,您现在可以在任何地方进行 console.log(user.Name);

它比进行商店查找更整洁,更快捷。

作为奖励,您的用户对象可能比商店在没有大量配置的情况下处理的要复杂得多。

于 2012-08-03T15:39:47.463 回答