实现跳转到帖子

lzt
lee-zt 4 weeks ago
parent 27f48ff43a
commit e663d6754c

@ -1,18 +1,21 @@
<!-- 模板部分生成HTML --> <!-- 模板部分生成HTML -->
<template> <template>
<div id="app"> <div id="app">
<MainPage /> <Header />
<RouterView></RouterView>
</div> </div>
</template> </template>
<!-- 控制模板数据与行为 --> <!-- 控制模板数据与行为 -->
<script> <script>
import MainPage from './components/MainPage.vue'; //import MainPage from './components/MainPage.vue';
import Header from './components/Header.vue';
import {RouterView} from 'vue-router';
export default { export default {
name: 'App', name: 'App',
components: { components: {
MainPage Header,
RouterView
} }
} }
</script> </script>

@ -38,7 +38,7 @@
<script> <script>
import { ref } from 'vue'; import { ref } from 'vue';
import { useRouter } from 'vue-router';
export default { export default {
name: 'PostPage', name: 'PostPage',
setup() { setup() {
@ -88,7 +88,7 @@ export default {
]); ]);
const filteredPosts = ref(posts.value); const filteredPosts = ref(posts.value);
const router = useRouter();
const selectCategory = (category) => { const selectCategory = (category) => {
selectedCategory.value = category; selectedCategory.value = category;
filteredPosts.value = filteredPosts.value =
@ -98,9 +98,7 @@ export default {
}; };
const goToPostDetail = (postId) => { const goToPostDetail = (postId) => {
const url = `/post/${postId}`; router.push({ name: 'PostDetail', params: { id: postId } });
console.log('Opening URL:', url);
window.open(`/post/${postId}`, '_blank');
}; };
return { return {

@ -1,9 +1,9 @@
import { createRouter, createWebHistory } from 'vue-router'; import { createRouter, createWebHistory } from 'vue-router';
import Login from '../components/Login.vue'; import Login from '../components/Login.vue';
import Register from '../components/Register.vue'; import Register from '../components/Register.vue';
import PostDetail from '@/components/PostDetail.vue'; import PostDetail from '@/views/PostDetail.vue';
import MainPage from '@/components/MainPage.vue'; import MainPage from '@/views/MainPage.vue';
import UserPage from '@/views/UserPage.vue';
const routes = [ const routes = [
{ {
@ -26,11 +26,15 @@ const routes = [
name: 'PostDetail', name: 'PostDetail',
component: PostDetail component: PostDetail
}, },
{
path: '/user',
name: 'UserPage',
component: UserPage
}
]; ];
const router = createRouter({ const router = createRouter({
history: createWebHistory(process.env.BASE_URL), history: createWebHistory(/*process.env.BASE_URL*/),
routes routes
}); });

@ -1,6 +1,5 @@
<template> <template>
<div> <div>
<Header />
<div class="top-container"> <div class="top-container">
<NoticeBoard /> <NoticeBoard />
<WelcomeCalendar /> <WelcomeCalendar />
@ -17,15 +16,13 @@
</template> </template>
<script> <script>
import Header from './Header.vue'; import NoticeBoard from '@/components/NoticeBoard.vue';
import NoticeBoard from './NoticeBoard.vue'; import WelcomeCalendar from '@/components/WelcomeCalendar.vue';
import WelcomeCalendar from './WelcomeCalendar.vue'; import PostPage from '@/components/PostPage.vue';
import PostPage from './PostPage.vue';
//import UserPage from './UserPage.vue'; //import UserPage from './UserPage.vue';
// import PostDetail from './PostDetail.vue'; // import PostDetail from './PostDetail.vue';
export default { export default {
components: { components: {
Header,
NoticeBoard, NoticeBoard,
WelcomeCalendar, WelcomeCalendar,
PostPage, PostPage,
Loading…
Cancel
Save