From 9337ba99bd161ced5fe6e4a4004d6161b9041938 Mon Sep 17 00:00:00 2001 From: "yingfeng.ai" Date: Fri, 1 Nov 2024 17:19:24 +0800 Subject: [PATCH] =?UTF-8?q?vue=E5=AD=A6=E4=B9=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 学习VUE/hello_vue3/src/App.vue | 82 +++++++++++++------ 学习VUE/hello_vue3/src/components/Person.vue | 19 +---- 学习VUE/hello_vue3/src/hooks/useDog.ts | 15 ++++ 学习VUE/hello_vue3/src/hooks/useSum.ts | 7 ++ 学习VUE/hello_vue3/src/main.ts | 14 +++- 学习VUE/hello_vue3/src/pages/About.vue | 19 +++++ 学习VUE/hello_vue3/src/pages/Details.vue | 25 ++++++ 学习VUE/hello_vue3/src/pages/Home.vue | 28 +++++++ 学习VUE/hello_vue3/src/pages/News.vue | 63 ++++++++++++++ 学习VUE/hello_vue3/src/router/index.ts | 38 +++++++++ .../笔记/将组建中了逻辑模块化hooks-useDog.ts | 15 ++++ .../笔记/将组建中了逻辑模块化hooks-useSum.ts | 7 ++ .../笔记/将组建中了逻辑模块化组建页面.vue | 30 +++++++ 学习VUE/hello_vue3/笔记/编程式路由导航.vue | 28 +++++++ 学习VUE/hello_vue3/笔记/路由_query参数.vue | 63 ++++++++++++++ 15 files changed, 411 insertions(+), 42 deletions(-) create mode 100644 学习VUE/hello_vue3/src/pages/About.vue create mode 100644 学习VUE/hello_vue3/src/pages/Details.vue create mode 100644 学习VUE/hello_vue3/src/pages/Home.vue create mode 100644 学习VUE/hello_vue3/src/pages/News.vue create mode 100644 学习VUE/hello_vue3/src/router/index.ts create mode 100644 学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useDog.ts create mode 100644 学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useSum.ts create mode 100644 学习VUE/hello_vue3/笔记/将组建中了逻辑模块化组建页面.vue create mode 100644 学习VUE/hello_vue3/笔记/编程式路由导航.vue create mode 100644 学习VUE/hello_vue3/笔记/路由_query参数.vue diff --git a/学习VUE/hello_vue3/src/App.vue b/学习VUE/hello_vue3/src/App.vue index 005fbd1..78d2f0a 100644 --- a/学习VUE/hello_vue3/src/App.vue +++ b/学习VUE/hello_vue3/src/App.vue @@ -1,39 +1,75 @@ diff --git a/学习VUE/hello_vue3/src/components/Person.vue b/学习VUE/hello_vue3/src/components/Person.vue index 323d398..fb0478d 100644 --- a/学习VUE/hello_vue3/src/components/Person.vue +++ b/学习VUE/hello_vue3/src/components/Person.vue @@ -1,26 +1,15 @@ diff --git a/学习VUE/hello_vue3/src/hooks/useDog.ts b/学习VUE/hello_vue3/src/hooks/useDog.ts index e69de29..c8ddd2f 100644 --- a/学习VUE/hello_vue3/src/hooks/useDog.ts +++ b/学习VUE/hello_vue3/src/hooks/useDog.ts @@ -0,0 +1,15 @@ +import { reactive } from 'vue' +import axios from 'axios' + +export const dogList = reactive([ + 'https://images.dog.ceo/breeds/spaniel-irish/n02102973_2902.jpg' +]) + +export async function changeImg() { + try { + const res = await axios.get("https://dog.ceo/api/breeds/image/random") + dogList.push(res.data.message) + } catch (e) { + alert(e) + } +} \ No newline at end of file diff --git a/学习VUE/hello_vue3/src/hooks/useSum.ts b/学习VUE/hello_vue3/src/hooks/useSum.ts index e69de29..209a236 100644 --- a/学习VUE/hello_vue3/src/hooks/useSum.ts +++ b/学习VUE/hello_vue3/src/hooks/useSum.ts @@ -0,0 +1,7 @@ +import { ref } from 'vue' + +export const num = ref(0) + +export function changeNum() { + num.value += 1 +} diff --git a/学习VUE/hello_vue3/src/main.ts b/学习VUE/hello_vue3/src/main.ts index 0ac3a5f..a4c897d 100644 --- a/学习VUE/hello_vue3/src/main.ts +++ b/学习VUE/hello_vue3/src/main.ts @@ -1,6 +1,12 @@ -import './assets/main.css' - +// 引入 createApp 用于创建应用 import { createApp } from 'vue' +// 引入APP根组件 import App from './App.vue' - -createApp(App).mount('#app') +// 引入路由器 +import router from "./router"; +//创建一个app +const app = createApp(App) +//使用路由器 +app.use(router) +//挂载整个应用到app容器中 +app.mount('#app') diff --git a/学习VUE/hello_vue3/src/pages/About.vue b/学习VUE/hello_vue3/src/pages/About.vue new file mode 100644 index 0000000..3ee122d --- /dev/null +++ b/学习VUE/hello_vue3/src/pages/About.vue @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/学习VUE/hello_vue3/src/pages/Details.vue b/学习VUE/hello_vue3/src/pages/Details.vue new file mode 100644 index 0000000..77abffc --- /dev/null +++ b/学习VUE/hello_vue3/src/pages/Details.vue @@ -0,0 +1,25 @@ + + + + + \ No newline at end of file diff --git a/学习VUE/hello_vue3/src/pages/Home.vue b/学习VUE/hello_vue3/src/pages/Home.vue new file mode 100644 index 0000000..301c071 --- /dev/null +++ b/学习VUE/hello_vue3/src/pages/Home.vue @@ -0,0 +1,28 @@ + + + + + \ No newline at end of file diff --git a/学习VUE/hello_vue3/src/pages/News.vue b/学习VUE/hello_vue3/src/pages/News.vue new file mode 100644 index 0000000..309c5db --- /dev/null +++ b/学习VUE/hello_vue3/src/pages/News.vue @@ -0,0 +1,63 @@ + + + + + \ No newline at end of file diff --git a/学习VUE/hello_vue3/src/router/index.ts b/学习VUE/hello_vue3/src/router/index.ts new file mode 100644 index 0000000..446c626 --- /dev/null +++ b/学习VUE/hello_vue3/src/router/index.ts @@ -0,0 +1,38 @@ +import {createRouter, createWebHistory} from 'vue-router' + +import Home from '@/pages/Home.vue' +import News from '@/pages/News.vue' +import About from '@/pages/About.vue' +import Details from '@/pages/Details.vue' + +//创建路由器 +const router = createRouter({ + history: createWebHistory(), //路由器的工作模式 + routes: [ + { + name: 'home', + path: '/', + component: Home + }, + { + name: 'news', + path: '/news', + component: News, + children: [ + { + name: 'news-details', + path: 'details', // 注意:子路由的 path 不需要以 "/" 开头 + component: Details + } + ] + }, + { + name: 'about', + path: '/about', + component: About + }, + ] +}) + +// 暴露出去 router +export default router \ No newline at end of file diff --git a/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useDog.ts b/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useDog.ts new file mode 100644 index 0000000..c8ddd2f --- /dev/null +++ b/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useDog.ts @@ -0,0 +1,15 @@ +import { reactive } from 'vue' +import axios from 'axios' + +export const dogList = reactive([ + 'https://images.dog.ceo/breeds/spaniel-irish/n02102973_2902.jpg' +]) + +export async function changeImg() { + try { + const res = await axios.get("https://dog.ceo/api/breeds/image/random") + dogList.push(res.data.message) + } catch (e) { + alert(e) + } +} \ No newline at end of file diff --git a/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useSum.ts b/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useSum.ts new file mode 100644 index 0000000..209a236 --- /dev/null +++ b/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化hooks-useSum.ts @@ -0,0 +1,7 @@ +import { ref } from 'vue' + +export const num = ref(0) + +export function changeNum() { + num.value += 1 +} diff --git a/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化组建页面.vue b/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化组建页面.vue new file mode 100644 index 0000000..58f67b3 --- /dev/null +++ b/学习VUE/hello_vue3/笔记/将组建中了逻辑模块化组建页面.vue @@ -0,0 +1,30 @@ + + + + + diff --git a/学习VUE/hello_vue3/笔记/编程式路由导航.vue b/学习VUE/hello_vue3/笔记/编程式路由导航.vue new file mode 100644 index 0000000..301c071 --- /dev/null +++ b/学习VUE/hello_vue3/笔记/编程式路由导航.vue @@ -0,0 +1,28 @@ + + + + + \ No newline at end of file diff --git a/学习VUE/hello_vue3/笔记/路由_query参数.vue b/学习VUE/hello_vue3/笔记/路由_query参数.vue new file mode 100644 index 0000000..69bcc94 --- /dev/null +++ b/学习VUE/hello_vue3/笔记/路由_query参数.vue @@ -0,0 +1,63 @@ + + + + + \ No newline at end of file