使用Ext JS,不要使用頁面做組件重用,盡量不要做頁面跳轉

來源:互聯網
上載者:User

今天,有人請教我處理辦法,問題是:

一個Grid,選擇某條記錄後,單擊編輯後,彈出編輯視窗帶編輯表單),編輯完成後單擊儲存按鈕儲存表單,並關閉視窗,重新整理Grid。


這,本來是很簡單的,但囿於開發人員對Ext JS的理解不到位,搞得相當的複雜了。


主要複雜的地方在以下幾點:

  • 為了實現編輯表單的可重用,把表單做成了頁面,然後在Window中套IFRAME開啟頁面。

  • 表單的提交不是用Ajax提交,而是使用習慣的頁面跳轉方式提交,於是,一切都複雜起來了。


要這樣實現,也不是不可以,在最後的提交頁面,調用parent對象操作父頁面的對象關閉視窗並重新整理Grid。不過,這樣實在太複雜了。


這裡存在的問題是對Ext JS的開發理解不到位,還是根據老的開發方式去來寫Ext JS的應用程式,因而本來簡單的東西一下子就複雜化了,這也是很多初學者經常犯的錯誤。

要很好的使用Ext JS進行開發,要牢記以下幾點:

  • Ext JS的資料互動,基本上是以Ajax為工具,以JSON或XML格式資料進行互動,這個過程,不需要任何的頁面跳轉來實行,資料的處理都以一種很標準化的資料格式進行處理,如錯誤處理、成功儲存等等資訊,都可通過JSON或XML格式的資料來告訴用戶端,讓用戶端去進行處理。

  • 使用Ext JS尤其是4)編寫自己的擴充,實現組件的重用,非常的方便,不需要把重用部分做成一個頁面那麼麻煩。

  • 使用Ext JS 4可以很容易實現單頁面的應用程式,也就是只需要一個頁面就行了,用戶端與伺服器端的資料互動都是遵循第一點來處理的。當然,擔心效能問題的,也會以IFRAME形式來實現多頁面的應用程式,但是,必須明白的是,這也是以單頁面為基礎的,意思就是,一個IFRAME頁面的流程,基本就是一個單頁面的應用程式的流程,不需要類似習慣的Web開發方式那樣進行多個頁面的控制。理解這點很重要,不然,還真不如不用Ext JS,直接使用習慣的Web開發方式來開發。

  • Ext JS在用戶端也是資料與UI分離的,千萬別在UI中找資料。

  • 使用Ext JS,是基於組件形式來組織UI的,而不是以HTML代碼來組織UI的,儘管最終產生的都是HTML代碼。一般情況下,是不需要直接編寫HTML代碼就能實現應用程式的,如果確實需要使用使用HTML代碼,那就要考慮為什麼要用、是否有替代辦法、怎麼用這樣問題。

以上純個人觀點,可能還有沒考慮到的地方,忘大家斧正。


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.