玩轉Ant Design Pro 一

2021-01-10 阿震聊IT

ant design pro來源於ant design,其是一段自帶樣式的react組件,用於企業後臺的漂亮的,可控的組件。

因為ant design很強大,阿里有些大神就直接將ant design繼續向上封裝成一個完整的項目,這就是ant design pro,注意ant design pro已經是一個成形的項目,配置環境已經好了,我們做項目只需要在其上進行增刪改就可以了,其就是個腳手。架

安裝

npm create umi

然後在下面的選項中選擇ant design pro

目錄結構

我們寫的界面主要是在pages裡面,路由配置主要是在config裡面

ant design pro最常用有兩個命令:

umi dev:本地模擬開發環境,可以使用mock數據,使用的開發環境的伺服器是expressumi build:打包出靜態文件,使用線上伺服器進行運行,如果在本地模擬線上環境,可以通過插件serve,這時候用不了mock數據的(可以安裝一個本地靜態伺服器:npm i serve ,然後通過serve -s dist,這時候就可以在本地模擬一個線上環境) 路由和菜單是組織起一個應用的關鍵骨架,pro 中的路由為了方便管理,使用了中心化的方式,在 config.ts 統一配置和管理,根據路由的配置會自動生成對應的菜單。

定義和修改antd pro中的樣式

因為我們定義的css是全局性的,這就產生了全局汙染的問題,也就是說,我們通過npm run build之後的css文件,後面的css選擇器會覆蓋前面的css選擇器,為了解決這種情況,我們採用了css modules方式,其定義如下:

在上面的樣式文件中,.title 只會在本文件生效,你可以在其他任意文件中使用同名選擇器,也不會對這裡造成影響。

前後端如何進行交互的:

1.UI 組件交互操作;2.調用 model 的 effect;3.調用統一管理的 service 請求函數;4.使用封裝的 request.ts 發送請求;5.獲取服務端返回;6.然後調用 reducer 改變 state;7.更新 model。

從上面的流程可以看出,為了方便管理維護,統一的請求處理都放在 services 文件夾中,並且一般按照 model 維度進行拆分文件, 在處理複雜的異步請求的時候,很容易讓邏輯混亂,陷入嵌套陷阱,所以 Ant Design Pro 的底層基礎框架 dva 使用 effect 的方式來管理同步化異步請求(通過 generator 和 yield 使得異步調用的邏輯處理跟同步一樣):

tips:

跨域:只要請求協議或者IP或者埠有一個不同,就表示是不同的請求,這時候就存在跨域,注意跨域請求中,伺服器還是可以接收到跨域請求的,只是響應會被瀏覽器給攔截,所有處理跨域有個方法就是讓伺服器告訴瀏覽器某個請求允許跨域,當然處理跨域還可以使用代理方式proxy其實前端開發說起來很簡單,也就是兩件事,就是發起請求和處理數據,把這兩件事情處理好了,前端也就學好了,再複雜的前端框架都是圍繞這兩點展開的antd pro是基於umi,es6,dva,等,如果有這幾方面基礎,會更加容易掌握antd pro本質上pro裡面的mock數據是不支持線上環境調用的,但是有些時候確實需要在線上環境調用mock,這時候可以通過工具umi serve,將mock數據單獨抽離出來,運行在某一個服務上,供pro調用。注意umi serve相對於umi dev區別是:umi dev支持熱更新,但是umi serve不支持熱更新,需要重新啟動後才會更新界面,umi serve更像線上環境安裝包的時候,npm install [...]默認是npm install [...] -S在一個項目中,到底是使用npm安裝依賴還是yarn,有一個參考標準,就是根據package.json裡面某些命令是用npm還是yarn在終端中,如果想知道當前路徑,可以通過命令:pwd注意開發過程中,如果遇到困難,可以查官方文檔,看看有沒有對應的例子,實在不行,可以看源碼ant design有很多組件和樣式,不可能所有都記住,我們只要記住常用的,遇到不常用的,學會查文檔就可以了

相關焦點

  • Ant Design 4.0 發布,來看看如何升級?
    # 通過 npx 直接運行npx -p @ant-design/codemod-v4 antd4-codemod src# 或者全局安裝# 使用 npmnpm i -g @ant-design/codemod-v4#
  • Ant Design 4.0 正式發布
    大家可以訪問 ant.design 了解更多信息,或在GitHub上關注Ant Design項目。需要注意的是,v3 版本於 2019 年 12 月合入 3.x-stable 分支並進入維護狀態。我們仍然會為 v3 版本進行半年的維護工作。維護截止日期為 2020 年 5 月。
  • Ant Design 4.0 正式版來了!究竟變化了多少,是否值得下水
    v4 文檔地址:https://ant.design需要注意的是,v3 版本於 2019 年 12 月合入 3.x-stable 分支並進入維護狀態。我們仍然會為 v3 版本進行半年的維護工作。維護截止日期為 2020 年 5 月。Ant Design v4 發布!點擊此處查看更多信息。
  • 【鈦晨報】阿里開源Ant Design隱藏聖誕節彩蛋遭遇開發者炮轟
    而某高性能響應式 Web 開發者表示,antd 是業內領先的前端組件庫之一,此前它給大家留下了相當正面的印象。但在本次事件發生後,大家對它的信任瞬間渙散了。 Ant Design 的核心維護人員面對用戶突如其來的質疑和吐槽,立馬做出了回應, 並提供了修復的方法: 關於 Ant Design 聖誕彩蛋,起源自 2018 年 9 月 10 日我的一次提交:add christmas easter egg · ant-design/ant-design@00aebeb,代碼實現會在 12 月 25 日當天給所有按鈕添加積雪效果
  • ...Design of Jinan City Sub-Center New East Railway Station...
    一、國際諮詢的目的  I.The design profundity shall meet the controlled detailed planning compiled requirements, and design profundity of important nodes shall meet the constructional detailed planning compiled requirements.
  • 拳頭的Valorant創數據神話!4AM小絕首測被觀眾舉報,真人形外掛
    談起Valorant這款遊戲,大家一定不會陌生。作為拳頭公司開發的FPS遊戲,曾在lol的十周年慶典上就給觀眾玩家做過預告。經過近半年的製作和打磨之後,Valorant終於開啟了封閉測試。在最近的國外數據中,Valorant已經達到了170萬同時在線觀眾、3400萬單日觀看時長,刷新Twitch平臺近10年來的紀錄,真的創造了FPS遊戲的關注度神話。錘子甚至覺得,Valorant在正式開服之後,能追上17年全民吃雞的熱潮,甚至完成超越。
  • 基於SpringBoot+AntDesign 的快速開發平臺,JeecgBoot 2.0.2 版本...
    項目介紹Jeecg-Boot 是一款基於SpringBoot+代碼生成器的快速開發平臺!
  • Valorant
    《Valorant》總觀看時間超3.34億小時 新型冠狀病毒疫情繼續推動著流媒體觀看總時長的增長,根據 StreamElements 與 Arsenal.gg 公開的統計數據顯示,4月流媒體平臺觀看總時長較上月相比上升了45%,與去年同期相比更是增長了99%之多;其中單是 Twitch 平臺四月的觀看總時長與去年同期相比就增長了99%
  • 拳頭FPS《Valorant》遊戲介紹 拳頭FPS《Valorant》配置要求
    拳頭日前正式公布了FPS新作「Project A」名字為《Valorant》,官方在油管上傳的演示下附文表示,《Valorant》是拳頭遊戲正在製作中的一款強調角色個性的5v5戰術FPS遊戲。接下來和小編一起來看看吧!
  • Ant Design 4.0正式發布:創造快樂工作
    大家可以訪問 ant.design 了解更多信息,或在GitHub上關注Ant Design項目。  2015 年,Ant Design 發布第一個版本,到現在時間過去整整 5 年了,第一代 Ant Designers 陸續退出舞臺中心,第二代、第三代 Ant Designers 正在扛起大旗。他們不僅僅扛起發展的重任,還要傳承 Ant Designer 的精神。
  • Valorant韓服下載遊玩超詳細圖文教程 Valorant韓服怎麼玩?
    Valorant韓服下載遊玩超詳細圖文教程 Valorant韓服怎麼玩? Valorant韓服最近開放了測試,很多國服的玩家都想跑去玩韓服,那麼Valorant的韓服怎麼下載遊玩呢?
  • Valorant:FPS電競的攪局者還是變革者?
    不管怎樣,作為拳頭公司在《英雄聯盟》之後第一個展開全球公測的多人競技類端遊作品,並且是非《英雄聯盟》IP的一款FPS產品,Valorant已經收穫了全球範圍內的大量關注,在市場層面上取得了初步成功。而接下來的問題則是,Valorant究竟是FPS電競市場的攪局者,還是一個會通過改變行業生態來幫助FPS電競在平穩發展20餘年後攀上下一座高峰的變革者?
  • 讓路一加8 pro,一加7T pro卻被大家低估!
    而作為國內高端的手機品牌,一加8 pro正式到來,並且首銷大獲全勝!作為一款幾乎沒有短板的旗艦產品,一加8 pro在眾多手機中脫穎而出,成為了目前5K檔價位均衡性最好的一款產品,並且帶來了2K OLED屏幕的設計,打破了第三方平臺測評機構13項屏幕紀錄,一加8 pro堪稱就是國產屏幕機皇了。
  • 《無畏契約(Valorant)》與CSGO、守望先鋒的差異點
    1、《Valorant》需要「急停」開槍《Valorant》在射擊手感方面和CSGO極像,所以如果你是一個CS老玩家,只要會「急停」那麼初期虐一下那些從「跑著開槍的遊戲」過來的玩家絕對綽綽有餘。特別是《Valorant》的急停手感相比CSGO還要更好一些,只要延遲不高,基本上CS的玩家玩《Valorant》都可以做到「無縫銜接」。而你如果是一位《守望先鋒》玩家,那麼《Valorant》的射擊會讓你很不適應。因為OW的開槍和移動往往是「同步」的。《Valorant》這樣需要「先停下來,再開槍」才能打到人的遊戲,會讓OW的槍神們很難殺人。
  • 拳頭FPS新遊《Valorant》下載和註冊教程
    6月2日上午7點,拳頭在英雄聯盟十周年慶典承諾大家的FPS新作《Valorant》終於迎來全球公測,雖然這次公測沒有國服版本,但國內的小夥伴仍然可以通過中國香港服伺服器體驗《Valorant》。木木下午那會幫大家把所有的坑都踩完了,現在就跟大家分享《Valorant》如何下載和註冊,以及使用哪款加速器效果最好。
  • 《valorant》跳躍彩蛋怎麼發現 跳躍彩蛋及發現方法介紹
    導 讀 valorant跳躍彩蛋及發現方法介紹 valorant是拳頭出品的一款射擊遊戲,眾所周知拳頭很愛在遊戲中藏一些彩蛋
  • 《Valorant》如何設置中文 中文設置方法分享
    導 讀 Valorant怎麼設置中文?
  • Valorant怎麼設置中文-中文設置方法
    Valorant怎麼設置中文?Valorant開測後玩家踴躍體驗,但是有些玩家看不懂英文怎麼玩呀,下面爪遊控小編就為大家帶來Valorant中文設置方法吧。Valorant中文設置方法
  • 《valorant》怎麼換槍 換槍方法分享
    導 讀 valorant無畏契約換槍操作是在Valorant中,默認主武器快捷鍵為數字鍵1,副武器快捷鍵為