AntDesign 實戰教程 --------前言
前言
開始學習
歡迎來到《Ant Design 實戰教程》。
這本教程將從最簡單的教起,讓大家學會如何使用 Ant Design 元件庫,然後逐漸深入,講解如何開發一個包含多個複雜網頁、用於實際生產的大型應用。
這是 Ant Design 元件庫的官方教程,由 Ant Design 開發團隊負責編寫。不管你是剛剛接觸前端開發的新手,還是已經從事實際開發、希望嘗試 React 技術棧的工程師,都是我們的目標讀者。
通過學習這門課程,我們希望幫助讀者達到下面幾個目標。
- 掌握 React 技術棧
- 掌握 Ant Design 元件庫和周邊工具
- 瞭解網際網路公司實際的前端開發模式和流程
- 瞭解前端開發技術的實現原理
- 提升實際開發能力和就業競爭力,能夠承擔真實業務
學習本教程,你最終會得到一個可以執行的示例專案,該專案所有程式碼可以在 https://github.com/ant-design/react-tutorial 中拿到。但是我們推薦你按照章節的順序,一步一步地自己搭建出整個示例專案。
前置知識
學習這本教程之前,讀者需要了解前端開發的基本知識,理解網頁的原理,會使用 HTML + CSS + JavaScript 寫簡單的網頁。
教程會大量使用 JavaScript 最新語法標準 ES6,所以也需要了解 ES6。如果你對這方面不熟悉,也沒有關係,我們在附錄裡面,準備了 ES6 語法簡介,可以開始學習之前,先讀一下這個附錄。
另外,教程使用的是命令列開發,會用到 Node。你不需要對 Node 有很深的瞭解,但是需要會在命令列下執行 Node 指令碼。所以,請確認你的開發環境已經安裝了 Node。
Ant Design 介紹
這門課程主要教的是 Ant Design 元件庫。那麼,元件(component)到底是什麼東西?
如果你經常瀏覽各種網站,就會發現不管網頁的主題是什麼,通常都會使用一些重複出現的構件,比如日曆、表格、表單、選單、卡片、導航欄等等。這些構件的功能和外觀都很類似,只是在一些細節的地方,根據需要做了定製。它們就叫做元件,一張完整的網頁,可以看做是不同功能的元件的集合。
很早就有人設想,如果能夠把常用的元件都封裝好,提供給開發者,那麼網頁開發就會變得非常簡單,只要把不同的元件像搭積木那樣組合起來,就能做出一張網頁。
但是,由於瀏覽器和 JavaScript 對元件的支援一直不完善,這個想法實行起來困難重重。很長一段時間,元件庫幾乎沒有進展。
2014年,React 框架釋出,為元件提出了一套可行的解決方案。從此,可以用於實際開發的元件庫才變成了現實。
Ant Design 就是基於 React 實現的一套元件庫。它是由螞蟻金服體驗技術部開發的,最早是在2015年釋出的,到現在已經發布了三個大版本,目前一共封裝了50多個元件。它在國內得到廣泛使用,可能是使用量最大的 React 元件庫,在國際上也有一定的知名度。
它的功能完備,使用簡單。你會發現使用 Ant Design,可以很快做出一張網頁,真的就像搭積木一樣。
值得一提的是,Ant Design 不僅包括元件,也包括一套設計規範和理念。元件庫可以看做是 Ant Design 設計規範的 React 實現。Ant Design 想要帶給使用者,不僅僅是功能,還包括漂亮的外觀和良好的體驗。
React 介紹
Ant Design 是基於 React 開發的。要使用 Ant Design,必須學會 React。
React 是 Facebook 公司推出的一套前端開發框架,是目前全世界最流行的前端框架。它的核心理念是將網頁應用看成一個元件構成的狀態機(state machine),狀態的變化導致了 UI 的變化。
React 本身的 API 並不多,是一個較為簡單的框架。但是,要用好它,必須使用其他的配套工具,所以人們常說學習 React 並不是學習一個框架,而是學習一整套 React 技術棧。
這門課程之中,我們也給大家準備了 React 入門章節和深入學習章節,幫助大家學會 React。
umi 介紹
React 元件使用的是 JSX 語法和很多新的 ES6 語法,瀏覽器不支援。另外,不同的元件指令碼必須打包在一起,瀏覽器才能載入。
因此,React 應用有一個構建過程,將原始碼編譯為生產環境程式碼。這個步驟對於新手來說是比較麻煩的,因為有很多配置的細節,而且包括很多重複的環節,每個專案都必須做一次,也是很煩人的。
因此,我們開發了一個工具 umi,封裝了編譯步驟,包括了很多開發時的有用工具。只要你寫好 React 程式碼,接下來 umi 就會把它處理為生產程式碼。
umi 也是螞蟻金服體驗技術部推出的工具。本課程採用 umi 和 Ant Design 配套使用。
學習交流群
大家在學習的過程中可以到釘釘學習交流群內交流溝通。
貢獻者
本教程是通過程式自動同步,語雀中顯示的作者並不是實際的作者。該課程是由下面的同學們共同編寫的:
以上排名不分先後。