ソースを参照

refactor: 移除页面布局定义并升级 Nuxt 至 4.3.0

- 移除各页面中的 definePageMeta 布局定义,改为在 nuxt.config.ts 中通过 routeRules 统一配置
- 升级 Nuxt 依赖版本从 4.2.2 至 4.3.0
- 启用实验性 payloadExtraction 以优化性能
- 添加开发环境代理配置,将 /api 请求转发至后端服务
reaper 1 ヶ月 前
コミット
f33c2e0590

+ 1 - 3
app/pages/mobile/about.vue

@@ -5,9 +5,7 @@
 </template>
 
 <script setup>
-definePageMeta({
-  layout: 'mobile'
-})
+
 </script>
 
 <style scoped lang="scss">

+ 1 - 3
app/pages/mobile/index.vue

@@ -8,9 +8,7 @@
 </template>
 
 <script setup>
-definePageMeta({
-  layout: 'mobile'
-})
+
 </script>
 
 <style scoped lang="scss">

+ 1 - 3
app/pages/web/about.vue

@@ -1,6 +1,4 @@
 <template></template>
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 </script>

+ 3 - 4
app/pages/web/docs.vue

@@ -1,6 +1,5 @@
-<template></template>
+<template>
+</template>
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 </script>

+ 1 - 3
app/pages/web/index.vue

@@ -141,9 +141,7 @@
 </template>
 
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 
 import { ref } from 'vue'
 import StatsSection from '~/components/home/StatsSection.vue'

+ 1 - 3
app/pages/web/products/boost.vue

@@ -93,9 +93,7 @@
   </div>
 </template>
 <script setup>
-definePageMeta({
-  layout: 'web'  
-})
+
 useHead(() => ({
   title: '高防服务器',
   meta: [

+ 1 - 3
app/pages/web/products/dns.vue

@@ -2,8 +2,6 @@
 
 </template>
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 </script>
 <style lang="scss" scoped></style>

+ 1 - 3
app/pages/web/products/sdk.vue

@@ -32,9 +32,7 @@
 </template>
 
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 import { ref } from 'vue'
 import Introduction from '~/components/products/Introduction.vue'
 import Card from '~/components/products/Card.vue'

+ 1 - 3
app/pages/web/products/web.vue

@@ -62,9 +62,7 @@
   </div>
 </template>
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 useHead(() => ({
   title: 'WEB安全加速',
   meta: [

+ 1 - 3
app/pages/web/solutions.vue

@@ -1,6 +1,4 @@
 <template></template>
 <script setup>
-definePageMeta({
-  layout: 'web'
-})
+
 </script>

+ 17 - 1
nuxt.config.ts

@@ -11,7 +11,23 @@ export default defineNuxtConfig({
   image: {
     // format: ['avif', 'webp', 'png']
     format: ['webp', 'png']
-  }
+  },
+  experimental: {
+    payloadExtraction: true // 关键:启用 payload 提取
+  },
+  nitro: {
+    devProxy: {
+      '/api': {
+        target: 'http://localhost:8080', // 你的后端地址
+        changeOrigin: true,
+        prependPath: true
+      }
+    }
+  },
+  routeRules: {
+    '/web/**': { appLayout: 'web' },
+    '/mobile/**': { appLayout: 'mobile' }
+  },
   // vite: {
   //   css: {
   //     preprocessorOptions: {

+ 1 - 1
package.json

@@ -16,7 +16,7 @@
     "@pinia/nuxt": "^0.5.5",
     "@vueuse/nuxt": "^14.1.0",
     "echarts": "^6.0.0",
-    "nuxt": "^4.2.2",
+    "nuxt": "^4.3.0",
     "vue": "^3.5.26",
     "vue-echarts": "^8.0.1",
     "vue-router": "^4.6.4"

ファイルの差分が大きいため隠しています
+ 308 - 156
pnpm-lock.yaml


この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません