我最近做了一個react的後台管理系統,用於快速創建後台項目模板
react-ant-admin
此框架使用與二次開發,前端框架使用react,UI框架使用ant-design,全局數據狀態管理使用redux,ajax使用庫為axios。用於快速搭建中後台頁面。歡迎各位提issue
預覽地址
特性
- 菜單配置:扁平化數據組織,方便編寫,存庫,頁面菜單,標題,側邊欄,頂部導航欄同步
- 頁面懶載入:使用@loadable/component來解決首次打開頁面過慢的問題.
- Ajax請求:restful規範,自動錯誤提示,提示可配置;自動打斷未完成的請求;
- 許可權控制: 根據不用角色的功能類型顯示菜單,路由頁面攔截.
系統提供了一些基礎的頁面
- 登錄頁
- 詳情頁
- 表單頁
- 列表頁
- 許可權管理
- 結果頁
快速使用
- 下載本項目到本地
D:> git clone //github.com/kongyijilafumi/react-ant-admin.git //github地址 慢
D:> git clone //gitee.com/kong_yiji_and_lavmi/react-ant-admin.git //碼雲地址 快
- 安裝依賴
// npm 慢
npm i
// cnpm 中國鏡像 快
cnpm i
- 啟動
npm run "start mock" // 啟動本地mock數據 (暫時沒有後台介面,請用此模式預覽項目)
npm run start // 啟動本地API介面來獲取數據
瀏覽器打開 //localhost:3000 即可
創建一個新的頁面
- 在src/pages文件夾下創建一個test.js文件,程式碼如下
// 函數組件
import React from "react";
export default function Test() {
return <div>test頁面</div>;
}
// 類組件
import React from "react";
export default class Test extends React.Component {
render() {
return <div>test頁面</div>;
}
}
- 在“src/router/route/index.js`文件里追加路由資訊.程式碼如下
import loadable from "@loadable/component";
import { Redirect } from "react-router-dom";
// .....
const Test = loadable(() => import("@pages/test")); // 支援路由懶載入
// 路由列表
const routerList = [
{
path: "/",
key: "index",
to: "/details/person",
components: Redirect,
},
// ....
{
path: "/test", // 對應的路由
key: "test",// 必要
title: "test頁面",// 標題
components: Test,
},
];
export default routerList;
創建一個菜單
該添加方式適用於 npm run “start mock” 啟動的項目
- 在
src/mock/index.js
找到menu
變數,往裡添加一條菜單資訊.程式碼如下所示
import dayjs from "dayjs";
let menu = [
{
title: "詳情頁",
path: "/details",
key: "details",
parentKey: "",
icon: "icon_edit",
type: "1,0",
},
{
title: "個人中心",
path: "/person",
key: "detailsPerson",
parentKey: "details",
icon: "icon_infopersonal",
type: "0,1",
},
// .... 開始添加菜單資訊 ....
{
title: "test",
path: "/test",
key: "test",
parentKey: "",// 空表示 為主菜單而非子菜單
icon: "icon_infopersonal",// 菜單圖標
type: "0,1", // 訪問許可權,自定義,當前項目 0為管理員,1為普通用戶.原始數據為字元串形式,會中途進行轉化為數組形式["0","1"]
}
// .....
]
- 由於菜單會走本地會話存儲
window.sessionStorage
,所以保存程式碼後需要關閉當前窗口,重新打開地址 //localhost:3000/react-ant-admin
打開之後,會發現菜單會多出一個
test
欄目,點擊會打開之前我們創建的test頁面.這樣就完成了菜單和頁面的編寫.
文檔地址
還在努力創建中….
更多建議歡迎騷擾~
項目截圖
- 登錄
- 詳情頁
- 列表
- 許可權管理
- 結果頁
企鵝號:1369501150
歡迎各位提出建議與問題!