1. 程式人生 > >以ant design pro示例框架為基礎的前端開發小結

以ant design pro示例框架為基礎的前端開發小結

如上圖,為ant design pro基本機構,最外層還有一個重要檔案.roadhogrc.mock.js。

在該框架中,執行的基本邏輯如下:

  1. 先搭建路由,src/common下有menu和router兩個檔案,先在menu裡寫入預備在slider裡邊展示的路徑,然後在router裡進行配置,將路由和檔案的路徑相匹配,並連線該頁面的model(models資料夾下的檔案,頁面需要的)
  2. 在src/routes下新建資料夾(eg:Temp),可以在下邊分別見index.js和index.less
  3. 在src/components下寫各頁面公共元件。
  4. 在src/models中建立頁面所需model,最好名稱對應(eg:temp),該檔案用來連線頁面和services,主要內容是action(該頁面呼叫了service的func)
  5. 在src/services/api中配置頁面進行前後臺數據請求的路徑並呼叫src/utils/request檔案中fetch方法向後臺傳送請求
  6. .roadhogrc.mock.js用於配置請求的url使前後臺連結起來
  • 在若用mock資料,在mock檔案中寫好並匯出,如原檔案,
  •  或者 ‘GET /api/users' : getUser(mock檔案匯出的內容) 
  • 當與後臺聯調時,改:‘GET /api/users' : { users : [ 1 , 2] }  為  'GET /api/users' : http://伺服器id:埠號(eg: http://127.0.0.1:8080/), 多個請求如下圖寫更方便,改域名的話直接改上邊的變數:

  •             錯!!!! 
  • 'GET /api/users' :  http://127.0.0.1:8080/api/users

    7.最後,可以在theme檔案中改主體及各個基礎設定,顏色,寬高,大小等;其他的theme不能改的樣式,可以加類名或者找元件渲染之後的類名,在src的index.less中改

8.最近發現了fetch在IE中的相容性問題,IE不識別promise,所以可以在傳送請求的檔案utils>request.js中,改fetch請求為ajax,我們之前的專案沒有相容IE,所以就不改了,但是在vue中處理過這個問題,可以在這個檔案中二次封裝原生ajax,嗯,應該也可以用jq,理論上,以後可以試一下,不過不喜歡引入太多框架,就ajax湊合用吧。。哈哈