为啥不在 Vue 和 Vue Router 生产环境中渲染我的组件?

Posted

技术标签:

【中文标题】为啥不在 Vue 和 Vue Router 生产环境中渲染我的组件?【英文标题】:Why not render my components in Vue and Vue Router production?为什么不在 Vue 和 Vue Router 生产环境中渲染我的组件? 【发布时间】:2019-12-28 06:13:17 【问题描述】:

使用 Vue Router 部署 Laravel 和 Vue 应用程序,但组件没有安装在我的 id 为 app 的 div 上,会发生什么情况?

主机是共享主机,Laravel 应用在项目文件夹中

我已将我的APP_URLASSET_URL 变量定义为我的mydomain.com/project/

在 Vue Router 路由上,起点是/admin

const routes = [    

  path: '/admin',
 children: [
     ...]

Vue.use(VueRouter);
const router = new VueRouter(
    mode: 'history',
    routes
)

公用文件夹的索引文件很好,在第一个实例中,我显示了登录名并正确显示,它验证了用户、登录名和所有内容,但是当我从后端登录时,我重定向到路径 admin是我的 Vue 路由器作用的地方。

可能发生了什么,我尝试了一切,在我的 vue 路由器路由上以 / 开始路径,但我没有成功。

我在控制台或 laravel 的日志中没有收到任何类型的错误

编辑

new Vue(
    el: '#app',
    store,
    router,
    render: h => h(App)
);

【问题讨论】:

请分享 Vue 和 Router 实例 是的,我添加了刚刚发送路由的实例。 你点击你的 index.php 了吗?您的 app.js 是否包含在内,是否包含预期内容? @PtrTon 如果显示的空白页面也加载了样式和 app.js,但视图中没有绘制任何内容。 看到您没有收到任何控制台错误,也许检查日志中的 php 错误?或者尝试重新编译您的 javascript 并仔细检查您的 .env 文件。我真的不知道任何其他可能会破坏您的 js 加载的事情。 【参考方案1】:

我猜你错过了设置 URL 偏移量/base

在路由器选项中添加base: "/project/"

Further readings

【讨论】:

以上是关于为啥不在 Vue 和 Vue Router 生产环境中渲染我的组件?的主要内容,如果未能解决你的问题,请参考以下文章

Vue-router 不在页面上显示组件

Vue-Router 不在单页应用程序中重新路由(Vue/Laravel)

带有历史模式和生产的 vue-router 的空白页面

为啥通过 Vue-router 传递数据返回“[object Object]”?

为啥 onclick 事件不适用于 vue-router?

为啥 router.push 不起作用? [Vue 3] [Vuex 4]