91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ext.js中Proxy有什么用

發布時間:2021-12-03 14:41:22 來源:億速云 閱讀:130 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關Ext.js中Proxy有什么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

一:描述

Proxy被Store用來加載和保存數據。Proxy的類型主要分為兩大種客戶端代理和服務端代理。

客戶端代理:

1.LocalStorageProxy:在瀏覽器支持的情況下,存儲數據到本地

2.SessionStorageProxy:在瀏覽器支持的情況下,存儲數據到session

3.MemoryProxy:存儲數據到本地內存,在頁面刷新的時候,數據會丟失

服務端代理:

1.Ajax :在同一個域內,發送請求到服務端。

2.JsonP:在跨域的情況下,發送請求到服務端

3.Rest :使用RESTful HTTP請求

4.Direct :使用Ext.direct.Manager 發送請求。

二:Ext.data.proxy.Ajax

AjaxProxy是在應用中使用最廣的一種代理方式,通過ajax請求服務端,加載數據。

如:

Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: ['id', 'name', 'email']
});

var store = Ext.create('Ext.data.Store', {
    model: 'User',
    proxy: {
        type: 'ajax',
        url : 'users.json'
    }
});

store.load();

這里我們加載User數據到Store,我們事先定義了一個Model,期望服務端返回對應字段的數據。

接下來我們通過proxy的配置,自動生成一個sotre

new Ext.data.proxy.Ajax({
    url: 'users.json',
    model: 'User',
    reader: 'json'
});

1. Readers和Writers

AjaxProxy可以配置一個Reader去解析服務端返回的信息。如果沒有設置Reader,AjaxProxy

默認使用一個JsonReader.

如:

var proxy = new Ext.data.proxy.Ajax({
    model: 'User',
    reader: {
        type: 'xml',
        root: 'users'
    }
});

proxy.getReader(); //returns an XmlReader instance based on the config we supplied

2.Url generation

AjaxProxy自動插入排序,過濾,分頁和分組選項到任何請求的url中,他通過以下參數來進行配置:

pageParam : 頁碼(也可以參考startParam和limitParam)

sortParam : 排序

groupParam : 分組

filterParam : 過濾

三:config

1.extraParams : 其它參數

2.limitParams : 默認為limit

3.noCache : 是否緩存請求  ,默認為true

4.pageParam : 默認為page

5.reader : Ext.data.reader.Reader

用來解析數據到一個Model或一個Store.

如:

Ext.create('Ext.data.Store', {
    model: 'User',
    proxy: {
        type: 'ajax',
        url : 'users.json',
        reader: {
            type: 'json',
            root: 'users'
        }
    },
});

Json字符串為:

{
    "success": true,
    "users": [
        { "name": "User 1" },
        { "name": "User 2" }
    ]
}

6.url

7.actionMethods

默認值:create: 'POST', read: 'GET', update: 'POST', destroy: 'POST'

四:Store & AjaxProxy舉例

var store = Ext.create('MyDesktop.ext.TimeoutController', {
fields : ['roleId', 'roleName', 'status'],
proxy : {
type : 'ajax',
actionMethods : {
read : 'POST'
},
 pageParam : 'pageNo',
 limitParam : 'pageSize',
url : '../role/findFuncRoles.do',
reader : {
type : 'json',
root : 'funcRoles',
totalProperty : 'totalCount'
}
}
});

關于“Ext.js中Proxy有什么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

合川市| 洪雅县| 常德市| 若羌县| 沧州市| 太保市| 灵武市| 岗巴县| 玉林市| 寿光市| 洛阳市| 桦川县| 巴青县| 龙江县| 泸溪县| 乌兰浩特市| 勃利县| 宜城市| 广德县| 济源市| 高碑店市| 叙永县| 广灵县| 镇赉县| 自治县| 榆社县| 抚松县| 临漳县| 乌兰浩特市| 三门县| 贺州市| 慈溪市| 和田县| 哈密市| 崇阳县| 武强县| 拉孜县| 土默特右旗| 宝山区| 峨山| 克东县|