From b757a75db976041618eadc1fd5954915686f67c7 Mon Sep 17 00:00:00 2001 From: Tim <135014430+nagisa77@users.noreply.github.com> Date: Mon, 14 Jul 2025 18:19:23 +0800 Subject: [PATCH] Add 404 page and login overlays --- .../src/components/CommentEditor.vue | 43 ++++++++++++++++--- open-isle-cli/src/components/LoginOverlay.vue | 39 +++++++++++++++++ open-isle-cli/src/components/PostEditor.vue | 19 ++++++++ open-isle-cli/src/router/index.js | 10 +++++ open-isle-cli/src/views/NewPostPageView.vue | 32 +++++++++++--- open-isle-cli/src/views/NotFoundPageView.vue | 33 ++++++++++++++ open-isle-cli/src/views/PostPageView.vue | 23 ++++++++-- open-isle-cli/src/views/ProfileView.vue | 2 + 8 files changed, 186 insertions(+), 15 deletions(-) create mode 100644 open-isle-cli/src/components/LoginOverlay.vue create mode 100644 open-isle-cli/src/views/NotFoundPageView.vue diff --git a/open-isle-cli/src/components/CommentEditor.vue b/open-isle-cli/src/components/CommentEditor.vue index f47d3b67a..f9bbe8145 100644 --- a/open-isle-cli/src/components/CommentEditor.vue +++ b/open-isle-cli/src/components/CommentEditor.vue @@ -19,7 +19,7 @@ + + diff --git a/open-isle-cli/src/components/PostEditor.vue b/open-isle-cli/src/components/PostEditor.vue index e35970ecc..555fcdfb4 100644 --- a/open-isle-cli/src/components/PostEditor.vue +++ b/open-isle-cli/src/components/PostEditor.vue @@ -32,6 +32,10 @@ export default { loading: { type: Boolean, default: false + }, + disabled: { + type: Boolean, + default: false } }, setup(props, { emit }) { @@ -48,6 +52,18 @@ export default { } ) + watch( + () => props.disabled, + val => { + if (!vditorInstance.value) return + if (val) { + vditorInstance.value.disabled() + } else if (!props.loading) { + vditorInstance.value.enable() + } + } + ) + watch( () => props.modelValue, val => { @@ -118,6 +134,9 @@ export default { }, after() { vditorInstance.value.setValue(props.modelValue) + if (props.loading || props.disabled) { + vditorInstance.value.disabled() + } } }) }) diff --git a/open-isle-cli/src/router/index.js b/open-isle-cli/src/router/index.js index 2833537c0..8a5a6cc8f 100644 --- a/open-isle-cli/src/router/index.js +++ b/open-isle-cli/src/router/index.js @@ -8,6 +8,7 @@ import SignupPageView from '../views/SignupPageView.vue' import NewPostPageView from '../views/NewPostPageView.vue' import SettingsPageView from '../views/SettingsPageView.vue' import ProfileView from '../views/ProfileView.vue' +import NotFoundPageView from '../views/NotFoundPageView.vue' const routes = [ { @@ -55,6 +56,15 @@ const routes = [ name: 'users', component: ProfileView }, + { + path: '/404', + name: 'not-found', + component: NotFoundPageView + }, + { + path: '/:pathMatch(.*)*', + redirect: '/404' + } ] const router = createRouter({ diff --git a/open-isle-cli/src/views/NewPostPageView.vue b/open-isle-cli/src/views/NewPostPageView.vue index 162acc42a..390df60a0 100644 --- a/open-isle-cli/src/views/NewPostPageView.vue +++ b/open-isle-cli/src/views/NewPostPageView.vue @@ -3,7 +3,8 @@
你访问的页面不存在或已被删除。
+