react-umi 光速上手


搭建項目

  • npx @umijs/create-umi-app 創建項目
  • npm run start 運行項目

核心路由

 目錄位置

  • 只修改pages文件夾下文件即可,路由自動生成
  • 組件另行建立component文件夾存放,不要寫在pages里面,理由你們應該也懂
  • 這個umi最好是先建立好所有路由文件再寫內容,不然會有點麻煩

   路由

  1. 要想讓框架自動識別路由,就刪除src下的.umirc.ts里面的routers,然后重啟項目即可
  2. 子路由嵌套
    • 建立文件夾,文件夾命名就是路由父級名稱
    • 文件夾內建立一個_layout.tsx文件,這個文件就是父級路由內容
    • 文件夾內所有其他文件都是這個_layout.tsx的子集文件
    • 在_layout.tsx內寫{this.props.children}就可以渲染子文件內容了
  3. 路由守衛
    • wrappers:[] 數組內寫路徑
    • 在路徑文件里面直接拋出一個方法,里面寫邏輯
    • 如果權限判斷非,使用redirectTo()方法進行重定向
    • 如果權限判斷是,可以直接返回<div>{props.children}</div>
  4. 路由跳轉
    • 引入history從umi里 使用方法跟原生react方法一樣
    • 引入Link從umi里 使用方法也跟原生一樣 to=‘’ 進行跳轉
  5. 路由api
    • <Prompt /> 
      • 屬性 message  確認離開 參數可以是函數或字符串
      • location => return location.pathname !== '' / " ? true : `確定離開去首頁么`
      • 屬性 when 確認當前用戶狀態判斷是否給予提示框 (一般用在表單填寫中
    • 其他的都是些無關緊要的東西,想了解可以移步官方文檔

umi樣式

  1. umiJS會自動識別CSS Modules 的使用,只有你把它當做CSS Modules 用時才是 CSS Modules
    • 想了解CSS Modules是什么的可以看我文檔
    • https://www.cnblogs.com/lrqcx/p/12821588.html
    • 也可以去查看阮一峰大神的文檔
  2. umiJS內置支持 less,不支持sass跟stylus,有需求可以通過配置 chainWebpack或者 umi插件的形式支持

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM