當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 充電吧
[導(dǎo)讀]EXT4終于發(fā)布了,厭倦了EXT3.x生成的臃腫的HTML代碼? EXT4在這方面的確做了很大的優(yōu)化。其中帶了資源占用減少和性能的提升。而EXT4引入的MVC模式更是將視圖與代碼邏輯分離。除了語(yǔ)法上與

EXT4終于發(fā)布了,厭倦了EXT3.x生成的臃腫的HTML代碼? EXT4在這方面的確做了很大的優(yōu)化。其中帶了資源占用減少和性能的提升。而EXT4引入的MVC模式更是將視圖與代碼邏輯分離。除了語(yǔ)法上與舊版有些許不同外。上手倒還是很快。但很快遇到的問(wèn)題也接踵而至。

在EXT4中 CRUD操作甚至能讓你從煩人的FORM提交解放出來(lái)。直接一條 ?Store.sync()搞定。非常方便。但馬上我便遇到了第一個(gè)問(wèn)題。倘若提交失敗,服務(wù)器返回的錯(cuò)誤信息如何顯示?如果只是單條記錄的操作,您可以使用 Model的 save方法來(lái)完成。例如:

var?rs?=?Ext.ModelManager.create(values,'OA.model.ChangePasswordModel');

			rs.save({
				success:function(r,o)
				{
					var?o=Ext.decode(o.response.responseText);??
					Ext.Msg.show({
						title:'溫馨提示',
						msg:o.message,
						icon:Ext.Msg.INFO,
						buttons:Ext.Msg.OK,
						fn:function()
						{
							win.close();
						},scope:this
					})
				},
				failure:function(r,o)
				{
					var?o?=?o.request.scope.reader.jsonData;
					Ext.Msg.show({
						title:'溫馨提示',
						msg:o["message"],
						icon:Ext.Msg.ERROR,
						buttons:Ext.Msg.OK
					})
				},scope:this
			});			

如果是多條記錄的刪除操作呢?

在閱讀了 Store Bath Proxy等類的源代碼后。發(fā)現(xiàn)錯(cuò)誤信息可以統(tǒng)一使用 偵聽(tīng)exception事件來(lái)完成。

遇到的第二個(gè)問(wèn)題是,如果您要?jiǎng)h除store中的一些記錄可以使用 Store.remove(records)來(lái)完成。然后調(diào)用 sync 與服務(wù)器同步。但如果服務(wù)器同步失敗……后果是本地已經(jīng)刪除的 記錄無(wú)法恢復(fù)。最后,我只得重寫了兩個(gè)方法。1、在remve的時(shí)候?qū)⒂涗洷4嬖谝獎(jiǎng)h除的記錄列表中。在 onDestroyRecords(私有方法 在服務(wù)器返回后調(diào)用)。再刪除這個(gè)列表中的記錄。代碼如下:


remove:?function(records,?/*?private?*/?isMove)?{
????????if?(!Ext.isArray(records))?{
????????????records?=?[records];
????????}

????????/*
?????????*?Pass?the?isMove?parameter?if?we?know?we're?going?to?be?re-inserting?this?record
?????????*/
????????isMove?=?isMove?===?true;
????????var?me?=?this,
????????????sync?=?false,
????????????i?=?0,
????????????length?=?records.length,
????????????isPhantom,
????????????index,
????????????record;

????????for?(;?i?<?length;?i++)?{
????????????record?=?records[i];
????????????index?=?me.data.indexOf(record);

????????????if?(me.snapshot)?{
????????????????me.snapshot.remove(record);
????????????}

????????????if?(index?>?-1)?{
????????????????isPhantom?=?record.phantom?===?true;
????????????????if?(!isMove?&&?!isPhantom)?{
????????????????????//?don't?push?phantom?records?onto?removed
????????????????????me.removed.push(record);
????????????????}

????????????????sync?=?sync?||?!isPhantom;
????????????}
????????}

????????me.fireEvent('datachanged',?me);
????????if?(!isMove?&&?me.autoSync?&&?sync)?{
????????????me.sync();
????????}
????},
????onDestroyRecords:?function(records,?operation,?success){

????????if?(success)?{
????????????var?me?=?this,
????????????????i?=?0,
????????????????length?=?records.length,
????????????????data?=?me.data,
????????????????snapshot?=?me.snapshot,
????????????????record;

????????????for?(;?i?<?length;?++i)?{
????????????????record?=?me.getById(records[i].get(records[i].idProperty||'id'));
????????????????if(null?!==?record)
????????????????{
	????????????????record.unjoin(me);
	????????????????data.remove(record);
	????????????????if?(snapshot)?{
	????????????????????snapshot.remove(record);
	????????????????}
????????????????}else{
????????????????	console.log(records[i]);
????????????????}
????????????}
????????????me.removed?=?[];
????????}
????},




本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉