InertiaJS(VueJS)+Laravel页面无数据显示问题求助
排查Inertia + Vue页面数据不渲染问题的步骤
确认Inertia客户端初始化正确性
检查项目入口文件(如app.js)的Inertia集成代码,确保路径匹配、初始化流程正确:import { createApp, h } from 'vue' import { createInertiaApp } from '@inertiajs/vue3' createInertiaApp({ resolve: name => import(`./Pages/${name}.vue`), setup({ el, App, props, plugin }) { createApp({ render: () => h(App, props) }) .use(plugin) .mount(el) }, })重点核对
resolve函数里的页面文件路径,比如Welcome.vue是否在指定的Pages目录下。验证props传递有效性
打开浏览器控制台,查看Inertia.page.props,确认name: 'Superman'存在。如果控制台没有Inertia对象,说明客户端脚本未正确加载,检查package.json中@inertiajs/vue3、@inertiajs/core的安装状态,以及入口文件的引入逻辑。检查组件模板与props声明
确保Welcome.vue的props声明和模板绑定无拼写错误:<template> <div>Hello, {{ name }}</div> </template> <script setup> defineProps({ name: String }) </script>注意Vue对变量名大小写敏感,避免出现
Name和name混用的情况。核对服务器端响应内容
在浏览器网络标签中找到对应路由的HTML响应,查看data-page属性的JSON内容,确认props里的name字段值正确、JSON格式无语法错误。若服务器返回的props本身存在问题,前端无法正常渲染。清除缓存并重新构建
执行命令清理资源并重新构建:npm run build同时用
Ctrl+Shift+R强制刷新浏览器,避免旧缓存文件干扰。排查控制台错误信息
仔细查看浏览器控制台的报错内容,比如组件导入失败、语法错误、Inertia初始化异常等,这类提示通常是问题的核心线索,根据提示修复对应问题即可。
内容的提问来源于stack exchange,提问作者NadxiruL
相关产品推荐
相关产品推荐

