diff --git a/eslint.config.js b/eslint.config.js
index 114fe53..8cf6c36 100644
--- a/eslint.config.js
+++ b/eslint.config.js
@@ -28,7 +28,7 @@ export default antfu(
       "node/prefer-global/process": "off",
       // style
       "style/comma-dangle": ["error", "never"],
-      "style/brace-style": "off",
+      "style/brace-style": ["error", "1tbs"],
       // regexp
       "regexp/no-unused-capturing-group": "off",
       // other
diff --git a/src/components/SearchMenu/SearchModal.vue b/src/components/SearchMenu/SearchModal.vue
index 112e24f..86c17f0 100644
--- a/src/components/SearchMenu/SearchModal.vue
+++ b/src/components/SearchMenu/SearchModal.vue
@@ -135,8 +135,7 @@ function handleEnter() {
   }
   try {
     router.push({ name })
-  }
-  catch {
+  } catch {
     ElMessage.error("该菜单有必填的动态参数,无法通过搜索进入")
     return
   }
diff --git a/src/hooks/useFullscreenLoading.ts b/src/hooks/useFullscreenLoading.ts
index 8ab333c..d311a2e 100644
--- a/src/hooks/useFullscreenLoading.ts
+++ b/src/hooks/useFullscreenLoading.ts
@@ -28,8 +28,7 @@ export const useFullscreenLoading: UseFullscreenLoading = (fn, options = {}) =>
     try {
       loadingInstance = ElLoading.service({ ...defaultOptions, ...options })
       return await fn(...args)
-    }
-    finally {
+    } finally {
       loadingInstance?.close()
     }
   }
diff --git a/src/hooks/useWatermark.ts b/src/hooks/useWatermark.ts
index 815a88f..d9dfb13 100644
--- a/src/hooks/useWatermark.ts
+++ b/src/hooks/useWatermark.ts
@@ -124,12 +124,10 @@ export function useWatermark(parentEl: Ref<HTMLElement | null> = bodyEl) {
     // 移除水印元素
     try {
       parentEl.value.removeChild(watermarkEl)
-    }
-    catch {
+    } catch {
       // 比如在无防御情况下,用户打开控制台删除了这个元素
       console.warn("水印元素已不存在,请重新创建")
-    }
-    finally {
+    } finally {
       watermarkEl = null
     }
   }
diff --git a/src/router/index.ts b/src/router/index.ts
index b14cdb8..26f11c0 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -304,8 +304,7 @@ export function resetRouter() {
         router.hasRoute(name) && router.removeRoute(name)
       }
     })
-  }
-  catch {
+  } catch {
     // 强制刷新浏览器也行,只是交互体验不是很好
     window.location.reload()
   }
diff --git a/src/router/permission.ts b/src/router/permission.ts
index 9c25624..79b0914 100644
--- a/src/router/permission.ts
+++ b/src/router/permission.ts
@@ -44,8 +44,7 @@ router.beforeEach(async (to, _from, next) => {
     permissionStore.addRoutes.forEach(route => router.addRoute(route))
     // 设置 replace: true, 因此导航将不会留下历史记录
     next({ ...to, replace: true })
-  }
-  catch (error) {
+  } catch (error) {
     // 过程中发生任何错误,都直接重置 Token,并重定向到登录页面
     userStore.resetToken()
     ElMessage.error((error as Error).message || "路由守卫过程发生错误")
diff --git a/src/views/hook-demo/use-fullscreen-loading.vue b/src/views/hook-demo/use-fullscreen-loading.vue
index ae0c275..de6dd62 100644
--- a/src/views/hook-demo/use-fullscreen-loading.vue
+++ b/src/views/hook-demo/use-fullscreen-loading.vue
@@ -32,8 +32,7 @@ async function querySuccess() {
 async function queryError() {
   try {
     await useFullscreenLoading(getErrorApi, options)()
-  }
-  catch (error) {
+  } catch (error) {
     ElMessage.error((error as Error).message)
   }
 }