diff --git a/package-lock.json b/package-lock.json index 15f83ea..ca426d6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,6 +12,7 @@ "axios": "^0.27.2", "core-js": "^3.8.3", "echarts": "^5.3.3", + "pinia": "^2.0.18", "vue": "^3.2.13", "vue-echarts": "^6.2.3", "vue-router": "^4.1.3" @@ -8073,6 +8074,50 @@ "node": ">=8.6" } }, + "node_modules/pinia": { + "version": "2.0.18", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.0.18.tgz", + "integrity": "sha512-I5MW05UVX6a5Djka136oH3VzYFiZUgeOApBwFjMx6pL91eHtGVlE3adjNUKLgtwGnrxiBRuJ8+4R3LKJKwnyZg==", + "dependencies": { + "@vue/devtools-api": "^6.2.1", + "vue-demi": "*" + }, + "peerDependencies": { + "@vue/composition-api": "^1.4.0", + "typescript": ">=4.4.4", + "vue": "^2.6.14 || ^3.2.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia/node_modules/vue-demi": { + "version": "0.13.7", + "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.7.tgz", + "integrity": "sha512-hbhlvpx1gFW3TB5HxJ0mNxyA9Jh5iQt409taOs6zkhpvfJ7YzLs1rsLufJmDsjH5PI1cOyfikY1fE/meyHfU5A==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, "node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", @@ -17477,6 +17522,23 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, + "pinia": { + "version": "2.0.18", + "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.0.18.tgz", + "integrity": "sha512-I5MW05UVX6a5Djka136oH3VzYFiZUgeOApBwFjMx6pL91eHtGVlE3adjNUKLgtwGnrxiBRuJ8+4R3LKJKwnyZg==", + "requires": { + "@vue/devtools-api": "^6.2.1", + "vue-demi": "*" + }, + "dependencies": { + "vue-demi": { + "version": "0.13.7", + "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.7.tgz", + "integrity": "sha512-hbhlvpx1gFW3TB5HxJ0mNxyA9Jh5iQt409taOs6zkhpvfJ7YzLs1rsLufJmDsjH5PI1cOyfikY1fE/meyHfU5A==", + "requires": {} + } + } + }, "pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", diff --git a/package.json b/package.json index 4b411b9..6273752 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "axios": "^0.27.2", "core-js": "^3.8.3", "echarts": "^5.3.3", + "pinia": "^2.0.18", "vue": "^3.2.13", "vue-echarts": "^6.2.3", "vue-router": "^4.1.3" diff --git a/src/assets/css/images/background.jpeg b/src/assets/css/images/background.jpeg new file mode 100644 index 0000000..87ac496 Binary files /dev/null and b/src/assets/css/images/background.jpeg differ diff --git a/src/components/Layout.vue b/src/components/Layout.vue index 22f80fc..cdb83ca 100644 --- a/src/components/Layout.vue +++ b/src/components/Layout.vue @@ -22,7 +22,7 @@ - 强彦文 + {{username}} ` @@ -61,6 +64,9 @@ import { } from '@ant-design/icons-vue'; import {useRouter,useRoute} from "vue-router"; import { defineComponent, ref,watch } from 'vue'; +import {useStore} from "@/store"; +import {storeToRefs} from "pinia"; + export default defineComponent({ name: "layout", components: { @@ -75,26 +81,27 @@ export default defineComponent({ setup() { const collapsed = ref(false) const selectedKeys = ref(['1']) + const {username} = storeToRefs(useStore()) let container = { padding: '24px', background: '#fff', minHeight: '100%'} const router = useRouter() const route = useRoute() const goTopage=(item)=>{ router.push('/'+item.key).catch((err)=>err) - console.log(route.meta.title) } const login =()=>{ //清除cookie router.push("/login") } - return { collapsed, selectedKeys, container, goTopage, route, - login + login, + username, + Check }; }, }); diff --git a/src/main.js b/src/main.js index efa6bd3..a95635d 100644 --- a/src/main.js +++ b/src/main.js @@ -7,7 +7,10 @@ import './assets/css/style.css' import Echarts from "vue-echarts"; import "echarts" const app = createApp(App) +import {createPinia} from "pinia"; +const pina = createPinia() app.component("Echarts",Echarts) app.use(Antd) +app.use(pina) app.use(router) app.mount('#app') diff --git a/src/store/index.js b/src/store/index.js new file mode 100644 index 0000000..1ee08d8 --- /dev/null +++ b/src/store/index.js @@ -0,0 +1,17 @@ +import {defineStore} from "pinia"; +const useStore = defineStore("mon",{ + state(){ + return { + username: "乔文章" + } + }, + actions:{ + Update(username){ + this.username = username + } + } +}) + +export { + useStore +} \ No newline at end of file diff --git a/src/view/Login.vue b/src/view/Login.vue index d6bace8..22e2403 100644 --- a/src/view/Login.vue +++ b/src/view/Login.vue @@ -1,15 +1,142 @@ + \ No newline at end of file