Go to file
Ryan Wang 2ef02f2e80
refactor: refactor the page management and remove the function page (#816)
#### What type of PR is this?

/kind api-change
/kind improvement

#### What this PR does / why we need it:

1. 重构页面管理,移除功能页面的功能,改为由插件自行配置菜单。
2. 改进自定义页面的 UI 权限绑定,不会再出现没有勾选相关角色,但仍然显示左侧**页面**菜单的问题。

原由请看:https://github.com/halo-dev/halo/issues/3124

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/3124

#### Screenshots:

<img width="1920" alt="image" src="https://user-images.githubusercontent.com/21301288/211480169-fd0490a6-bd1a-447c-bde4-155a16355734.png">

插件需要自己定义菜单配置,如:

<img width="1920" alt="image" src="https://user-images.githubusercontent.com/21301288/211480228-146e6b53-9da4-4a60-b691-dd183f0a45c7.png">

```diff
export default definePlugin({
-  name: "PluginLinks",
   components: {},
   routes: [
     {
       parentName: "Root",
       route: {
-        path: "/pages/functional/links",
+        path: "/links",
         name: "Links",
         component: LinkList,
         meta: {
           permissions: ["plugin:links:view"],
+          menu: {
+            name: "链接",
+            group: "content",
+            icon: markRaw(RiLinksLine),
+          },
         },
       },
     },
   ],
-  extensionPoints: {
-    "page:functional:create": () => {
-      return [
-        {
-          name: "链接",
-          url: "/links",
-          path: "/pages/functional/links",
-          permissions: ["plugin:links:view"],
-        },
-      ];
-    },
-  },
 });
```

#### Special notes for your reviewer:

测试方式:

1. 测试左侧菜单的页面入口是否正常。
2. 创建一个新的角色,不勾选页面的查看权限,登录后检查是否可以在左侧菜单看到页面选项。
3. 测试插件添加菜单是否正常,可测试插件:[plugin-links-1.0.0-SNAPSHOT-plain.jar.zip](https://github.com/halo-dev/console/files/10379709/plugin-links-1.0.0-SNAPSHOT-plain.jar.zip)


#### Does this PR introduce a user-facing change?

```release-note
重构页面管理,移除功能页面的功能。
```
2023-01-10 10:44:40 +00:00
.changeset refactor: rename admin to console (#634) 2022-10-09 06:56:33 +00:00
.github chore: remove build jobs of github action (#759) 2022-12-07 18:04:33 +08:00
.husky chore: use lint-staged to improve dx (#768) 2022-12-13 15:38:48 +00:00
.vscode chore: update vscode extension recommendations 2022-08-31 23:35:46 +08:00
cypress chore: next major version base project (#478) 2022-03-03 18:26:15 +08:00
docs feat: add editor extension point (#781) 2022-12-22 04:14:29 +00:00
packages refactor: refactor the page management and remove the function page (#816) 2023-01-10 10:44:40 +00:00
public feat: add support for setting console's favicon (#788) 2022-12-22 07:58:31 +00:00
src refactor: refactor the page management and remove the function page (#816) 2023-01-10 10:44:40 +00:00
.dockerignore Add dockerignore file to ignore node_modules folder while building docker image (#588) 2022-07-19 07:50:05 +00:00
.editorconfig refactor: upgrade codemirror version. (#354) 2021-09-15 21:44:00 +08:00
.env.development refactor: set the root path of the development environment to /console (#638) 2022-10-11 15:32:14 +00:00
.env.production refactor: improve login-related logic (#617) 2022-09-22 12:46:12 +00:00
.eslintrc.cjs chore: use vue/vue3-recommended eslint plugin 2022-08-30 17:30:43 +08:00
.gitignore chore: use pnpm's workspace feature to manage base components (#579) 2022-06-14 15:56:55 +08:00
.gitpod.yml chore: update gitpod config 2022-09-09 19:17:22 +08:00
.npmignore refactor: refactor post preview and private post view. 2019-12-19 17:50:23 +08:00
.npmrc chore: bump dependencies 2022-08-23 11:10:29 +08:00
.prettierignore chore: use lint-staged to improve dx (#768) 2022-12-13 15:38:48 +00:00
Dockerfile Refactor GitHub workflow configuration (#589) 2022-07-19 19:31:11 +08:00
LICENSE release: 1.2.0. 2020-01-05 22:39:18 +08:00
Makefile Add Makefile for convenient operations (#641) 2022-10-13 10:00:16 +00:00
OWNERS chore: add @wzrove to reviewer list (#714) (#771) 2022-12-14 02:08:48 +00:00
README.md docs: update github workflow badge (#775) 2022-12-16 02:54:11 +00:00
cypress.json chore: next major version base project (#478) 2022-03-03 18:26:15 +08:00
env.d.ts feat: api client requests support configuring the mute parameter to hide exception toast (#744) 2022-12-05 09:40:12 +00:00
index.html feat: add support for setting console's favicon (#788) 2022-12-22 07:58:31 +00:00
package.json chore: release 2.1.0 (#811) 2022-12-30 02:32:33 +00:00
pnpm-lock.yaml feat: add target attribute setting for menu item (#805) 2022-12-29 13:50:33 +00:00
pnpm-workspace.yaml chore: use pnpm's workspace feature to manage base components (#579) 2022-06-14 15:56:55 +08:00
postcss.config.js chore: configure tailwind css (#504) 2022-03-11 11:51:40 +08:00
prettier.config.js chore: add tailwindcss prettier plugin and reformat code 2022-05-29 23:55:06 +08:00
tailwind.config.js refactor: widgets of dashboard page (#736) 2022-11-30 14:51:49 +00:00
tsconfig.app.json feat: add attachment management support (#600) 2022-09-04 17:06:11 +00:00
tsconfig.json chore: next major version base project (#478) 2022-03-03 18:26:15 +08:00
tsconfig.vite-config.json refactor: external static libraries 2022-09-26 13:16:40 +08:00
tsconfig.vitest.json chore: next major version base project (#478) 2022-03-03 18:26:15 +08:00
vite.config.ts refactor: widgets of dashboard page (#736) 2022-11-30 14:51:49 +00:00
vitest.config.ts refactor: load the logo as an inline svg (#664) 2022-10-26 03:10:14 +00:00

README.md

README

Halo logo

Halo 2.0 的管理端项目(原 halo-admin

GitHub release GitHub GitHub last commit GitHub Workflow Status Gitpod ready-to-code


当前仓库已经将 halo-admin 改为了 console。但对于 Halo 1.x 版本,依旧保持 halo-admin 的概念。

开发环境运行

# pnpm@7.0.0+
npm install -g pnpm
pnpm install 
pnpm build:packages
pnpm dev

生产构建

pnpm build

状态

Repobeats analytics