parent
							
								
									8a67f818a8
								
							
						
					
					
						commit
						f029dffb44
					
				
				 9 changed files with 122 additions and 14 deletions
			
			
		| @ -0,0 +1,13 @@ | |||||||
|  | <template> | ||||||
|  |   <div> | ||||||
|  |     <router-link :to="{name:'options'}">OptionsAPI</router-link> | ||||||
|  |     | | ||||||
|  |     <router-link :to="{name:'composition'}">CompositionAPI</router-link> | ||||||
|  |   </div> | ||||||
|  |   <div> | ||||||
|  |     <router-view></router-view> | ||||||
|  |   </div> | ||||||
|  | </template> | ||||||
|  | <script setup> | ||||||
|  | 
 | ||||||
|  | </script> | ||||||
| @ -0,0 +1,6 @@ | |||||||
|  | import {createApp} from "vue"; | ||||||
|  | import App from "./App.vue" | ||||||
|  | import router from './router' | ||||||
|  | import store from './store' | ||||||
|  | 
 | ||||||
|  | createApp(App).use(router).use(store).mount('#app') | ||||||
| @ -0,0 +1,32 @@ | |||||||
|  | // 引入必要的router组件
 | ||||||
|  | import {createRouter, createWebHistory} from 'vue-router' | ||||||
|  | // 引入视图
 | ||||||
|  | const OptionsAPI = () => import('../views/OptionsAPIView.vue') | ||||||
|  | const CompositionAPI = () => import('../views/CompositionAPIView.vue') | ||||||
|  | 
 | ||||||
|  | // 引入组件
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | // 创建路由
 | ||||||
|  | const routes = [ | ||||||
|  |     { | ||||||
|  |         path: '/options', | ||||||
|  |         name: 'options', | ||||||
|  |         component: OptionsAPI | ||||||
|  |     }, | ||||||
|  |     { | ||||||
|  |         path: '/composition', | ||||||
|  |         name: 'composition', | ||||||
|  |         component: CompositionAPI | ||||||
|  |     }, | ||||||
|  | ] | ||||||
|  | 
 | ||||||
|  | // 创建路由器,使用createRouter方法,传入history(路由类型)和 创建好的路由routes
 | ||||||
|  | // 路由类型分为hash型和html5型,分别为createWebHashHistory和createWebHistory
 | ||||||
|  | const router = createRouter({ | ||||||
|  |     history: createWebHistory(), | ||||||
|  |     routes | ||||||
|  | }) | ||||||
|  | 
 | ||||||
|  | // 导出路由
 | ||||||
|  | export default router | ||||||
| @ -0,0 +1,16 @@ | |||||||
|  | import {createStore} from "vuex"; | ||||||
|  | 
 | ||||||
|  | export default createStore({ | ||||||
|  |     state: { | ||||||
|  |         count: 1, | ||||||
|  |     }, | ||||||
|  |     mutations: { | ||||||
|  | 
 | ||||||
|  |     }, | ||||||
|  |     actions: { | ||||||
|  | 
 | ||||||
|  |     }, | ||||||
|  |     modules: { | ||||||
|  | 
 | ||||||
|  |     } | ||||||
|  | }) | ||||||
| @ -0,0 +1,17 @@ | |||||||
|  | <template> | ||||||
|  |   <h3>{{ handleCount }}</h3> | ||||||
|  | </template> | ||||||
|  | 
 | ||||||
|  | <script setup> | ||||||
|  | import {computed} from "vue"; | ||||||
|  | import {useStore} from "vuex"; | ||||||
|  | 
 | ||||||
|  | const store = useStore() | ||||||
|  | 
 | ||||||
|  | const handleCount = computed(() => store.state.count); | ||||||
|  | 
 | ||||||
|  | </script> | ||||||
|  | 
 | ||||||
|  | <style scoped> | ||||||
|  | 
 | ||||||
|  | </style> | ||||||
| @ -0,0 +1,18 @@ | |||||||
|  | <template> | ||||||
|  |   <h3>{{handleCount}}</h3> | ||||||
|  | </template> | ||||||
|  | 
 | ||||||
|  | <script> | ||||||
|  | export default { | ||||||
|  |   name: "OptionsAPIView", | ||||||
|  |   computed: { | ||||||
|  |     handleCount: function () { | ||||||
|  |       return this.$store.state.count | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | </script> | ||||||
|  | 
 | ||||||
|  | <style scoped> | ||||||
|  | 
 | ||||||
|  | </style> | ||||||
					Loading…
					
					
				
		Reference in new issue