[英]How to access shared data from a layout component in Vue/Inertiajs
我已经使用inertiajs 官方网站上的这条指令来共享用户身份验证数据,它适用于所有页面,除了那些不直接由 Inertia::render() 方法呈现的页面。
我需要从名为 <Master> 的布局组件访问用户身份验证数据,但我不能!
这是我的结构/层次结构:
- Vue/
- Pages/
- Home/
- Index.vue
- Layouts/
- Master.vue
- Header.vue
- Footer.vue
- App.js
这是我的 <Master> 组件:
<template>
<Head>
<title>My Title</title>
</Head>
<Header :user="user"/>
<slot/>
<Footer/>
</template>
<script>
import Header from './Header';
import Footer from './Footer';
import {Head} from '@inertiajs/inertia-vue3';
export default {
data() {
return {
user: this.auth.user,
}
},
props:{
auth: Object,
},
components: {
Header,
Footer,
Head,
}
}
</script>
您可以使用$page
属性或usePage()
挂钩。
<Header :user="$page.props.auth.user" />
const user = computed(() => usePage().props.value.auth.user)
如果您向下滚动您提供的链接,您就会知道。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.