我目前正在 nuxt 3 中创建一个应用程序。这个应用程序只有一个任务:
在我的项目中我有:
[...]
/pages
- post.vue
- user.vue
- info.vue
- [...]
app.vue
[...]
在
app.vue
<template>
<NuxtPage :name="data.page">
<template>
<script setup>
// here some shortened logic
const route = useRoute().fullPath;
const data = new RequestToBe(route).send();
console.log(data) // { page: 'post', ... }
</script>
如何根据数据呈现我的页面?是配置router,还是通过渲染逻辑来解决?
什么在您的设置中不起作用?想象一下,您可以在更改路线之前检查 data.page:
<template>
<NuxtPage />
</template>
<script setup>
// here some shortened logic
const router = useRouter()
const route = useRoute().fullPath;
try {
const data = new RequestToBe(route).send();
console.log(data) // { page: 'post', ... }
if (data.page === 'post') {
// go to post page
router.push('/post')
} else {
// or do something else
}
} catch (error) {
// something went wrong
console.log(error)
}
</script>