ExtJS新手調試過程

本文是我的學習Extjs調試程序心得,有錯請指正,謝謝指教!html

寫這篇文章的初衷是由於學習Extjs有了大半年的時間,從問問題到能夠解答一些常識性問題過程當中意識到,不少新手在問問題的時候都只是問結果爲何不是想的那樣,包括我本身剛開始。其實問問題是一門又學問的事,知道問題點在那裏在去問 這樣能夠事半功倍,別人也樂於爲你解答。在這裏我就簡單的說一下Extjs 在調試上 我是怎麼查找問題的。(Extjs 不一樣於輕量級的框架,須要一些js,jquery方面的基礎)
jquery

問題類型1:爲何我加的組件不顯示。ajax

  拜託!..你加的組件不顯示我怎麼知道。我還得幫你捋一捋你的思路,因此不少新人問這個問題的時候都是沒人願意迴應的,由於解決起來很麻煩,不少種可能性。下面我就帶來個人調試方法。首先打開瀏覽器的調試框,以下圖:api

            

看看程序是否報錯,報錯的緣由是什麼,報錯在那個文件,那段代碼。通常只看本身添加組件所在js的錯誤信息(關於如何查找到準確的錯誤信息自行百度)瀏覽器

而後若是沒有報錯還不顯示怎麼辦呢? 接下來咱們就要檢查是添加組件自己的問題,仍是父組件兼容問題。框架

  1.很簡單 還記得你寫的第一個Ext界面麼,把你的組件抽出來 單獨顯示在一個頁面上。若是能夠顯示就多是父組件的問題,可是是不是兼容問題,還要進行一步。若是不現實就是你組件自己的問題,請參考api進行更改,主要檢查本身添加的屬性會給組件帶來什麼樣的影響。(熟悉api很是重要)佈局

  2.用系統組件代替你的自定義組件,api上的例子直接複製到你的組件的代碼上就能夠了,好比你自定義的combobox不顯示,那就用api上的combobox,若是api上的例子能夠顯示那麼就是你定義的combobox的問題,通常常規的配置參考api(本身定義的屬性要知道是用來作什麼的,再次聲明api很是重要),若是系統組件也沒法顯示那麼就是父組件的兼容性問題了,通常是用搜索引擎能夠找到常見的問題答案,同時父組件如無特殊要求應該儘可能使用自身不帶有佈局屬性或者特殊屬性的容器(如Panel,Container,Component)。學習

 

問題類型2:爲何後臺的值在前臺沒法顯示?搜索引擎

  拜託!你總得告訴我值到哪裏了,有沒有傳回前臺,前臺有沒有請求後臺的值。下面就是我在這一類型問題上的解決方法spa

  1.首先你要知道你的組件有沒有報錯,若是報錯請參考上面的瀏覽器調試或者自行百度報錯緣由。

  2.若是沒報錯,那麼前臺是否發請求去後臺請求值&請求是否有效,若是沒有發送請求,那就是你組件請求的問題(仔細檢查store,ajax,ext.request.etc..)。

  若是請求報403,501等錯誤自行百度解決。

  3.是否後臺報錯,是否請求超時。若是有自行檢查後臺代碼(多寫調試語句對新手很重要)

  4.若是請求收到了數據,請檢查數據格式和內容是否和你要的數據格式是一致的。

  5.前臺是否解析到了你的數據,檢查fields或者model或者直接對象取屬性,鍵值對是否一致。

  6.前臺組件數據標識是否與fields或者model一致,如通常組件數據標識是‘name’,grid中的列數據標識是‘dataIndex’。

  7.若是上述均可以,仍是沒法解決就只能自求多福了。(注:用法不對產生的問題,不算extjs自己的bug)

 

問題類型3:流程性問題

  拜託!流程性問題很耗時間,可能性也不少,你們都是工做的 都很忙ok?

  遇到流程性問題 應該本身先有個數據處理的流程,心中大體有個流程圖 而後在動手 ,具體的技術上問題再去詢問 你們都會樂意爲你解答。

 

以上純屬我的看法,若是有異議

  哈哈,打死我啊,來打死我啊。

相關文章
相關標籤/搜索