feat: 初始化 Vue 前端工程与 embed 占位

This commit is contained in:
Nixevol
2026-09-30 05:50:37 +08:00
parent 5041a5bdd3
commit 857ba893fd
18 changed files with 1429 additions and 0 deletions
+14
View File
@@ -0,0 +1,14 @@
<script setup lang="ts">
import { NConfigProvider, NMessageProvider, NDialogProvider, zhCN, dateZhCN } from "naive-ui";
import { RouterView } from "vue-router";
</script>
<template>
<n-config-provider :locale="zhCN" :date-locale="dateZhCN" size="small">
<n-message-provider>
<n-dialog-provider>
<RouterView />
</n-dialog-provider>
</n-message-provider>
</n-config-provider>
</template>
+11
View File
@@ -0,0 +1,11 @@
import { createApp } from "vue";
import { createPinia } from "pinia";
import naive from "naive-ui";
import App from "./App.vue";
import { router } from "./router";
const app = createApp(App);
app.use(createPinia());
app.use(router);
app.use(naive);
app.mount("#app");
+13
View File
@@ -0,0 +1,13 @@
import { createRouter, createWebHistory } from "vue-router";
import HomeView from "../views/HomeView.vue";
export const router = createRouter({
history: createWebHistory(),
routes: [
{
path: "/",
name: "home",
component: HomeView,
},
],
});
+7
View File
@@ -0,0 +1,7 @@
import { defineStore } from "pinia";
import { ref } from "vue";
export const useAppStore = defineStore("app", () => {
const title = ref("NixMsg");
return { title };
});
+15
View File
@@ -0,0 +1,15 @@
<script setup lang="ts">
import { NCard, NSpace, NText } from "naive-ui";
import { storeToRefs } from "pinia";
import { useAppStore } from "@/stores/app";
const { title } = storeToRefs(useAppStore());
</script>
<template>
<n-space vertical style="padding: 24px">
<n-card :title="title">
<n-text>管理后台骨架(T0.1)。后续页面由 W 线实现。</n-text>
</n-card>
</n-space>
</template>