// App.vue
<template>
<div id="app">
<router-link to="/page1">Go to Page 1</router-link>
<router-link to="/page2">Go to Page 2</router-link>
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'App'
}
</script>
// Page1.vue
<template>
<div>
<h1>Page 1</h1>
<input v-model="message" placeholder="Enter message">
<button @click="goToPage2">Go to Page 2 with message</button>
</div>
</template>
<script>
export default {
data() {
return {
message: ''
}
},
methods: {
goToPage2() {
this.$router.push({ path: '/page2', query: { message: this.message } })
}
}
}
</script>
// Page2.vue
<template>
<div>
<h1>Page 2</h1>
<p>Message from Page 1: {{ message }}</p>
</div>
</template>
<script>
export default {
computed: {
message() {
return this.$route.query.message || 'No message received'
}
}
}
</script>
// router/index.js
import Vue from 'vue'
import Router from 'vue-router'
import Page1 from '@/components/Page1'
import Page2 from '@/components/Page2'
Vue.use(Router)
export default new Router({
routes: [
{
path: '/page1',
name: 'Page1',
component: Page1
},
{
path: '/page2',
name: 'Page2',
component: Page2
}
]
})
this.$route.query.message 获取从第一个页面传递过来的消息并显示。Page1 和 Page2 组件。这种方式使用 URL 查询参数 (query) 来传递数据,简单且易于理解。如果你需要更复杂的数据传递方式(如 Vuex 状态管理),可以根据需求进行调整。
上一篇:vue toast
下一篇:vue多页面应用开发
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站