Vue路由器在vue cli构建中不起作用

Posted

技术标签:

【中文标题】Vue路由器在vue cli构建中不起作用【英文标题】:Vue router not working in vue cli build 【发布时间】:2017-09-22 00:32:56 【问题描述】:

我已经使用 vue cli 开发的项目在开发模式下运行良好。但是当我建造它时。没有路由加载的组件('/',组件),一切都很好。 我的代码有什么问题

import Vue from 'vue'
import App from './App'
import router from './router/index'

Vue.config.productionTip = false
new Vue(
  router,
  template: '<App/>',
  components:  App 
 ).$mount('#app')

    import Vue from 'vue'
    import Router from 'vue-router'
    import Home from '@/components/Home.vue'
    import List from '@/components/List.vue'
    const router = new Router(
     mode: 'history',
     routes: [
     
      path: '/',
      component: Home
    ,
    
      path: '/buy-n-sell/:category',
      component: List,
      children: [
        
          path: '',
          component: catLists
        ,
        
          path: 'location/:city',
          component: cityLists,
          name: 'citypostList'
        ,
        
          path: 'subcategory/:subcat',
          component: subcatList,
          name: 'subcatpostList'
        ,
        
          path: 'subcategory/:subcat/:city',
          component: subcatCityList,
          name: 'subcatecityList'
        
      ]
    
  ]
)
export default router

【问题讨论】:

您找到解决方案了吗?我有同样的问题:***.com/questions/50003678/… 【参考方案1】:

我想您需要处理重写才能使历史模式正常工作 检查https://router.vuejs.org/en/essentials/history-mode.html

nginx

location / 
    try_files $uri $uri/ /index.html;

apache(创建 /dist/.htaccess)

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.html$ - [L]
  RewriteCond %REQUEST_FILENAME !-f
  RewriteCond %REQUEST_FILENAME !-d
  RewriteRule . /index.html [L]
</IfModule>

【讨论】:

所以基本上你不能在 php 页面中使用 vue 路由器让我们说 你的意思是一个有现有路由的php页面?我会说在任何一种情况下,您都可以使用 vue 的现有路线和不存在的路线..这取决于您的设置和需求..也许您可以澄清您的问题?【参考方案2】:

在 Lumen 中,在 web.php 路由文件的末尾添加 Route::get('/vue_capture:[/\w.-]*', function () return view('pages.home'); );

您可能还想在 laracasts 上查看此 Link

【讨论】:

以上是关于Vue路由器在vue cli构建中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

更改路由时jQuery在vue组件中不起作用

路由的默认 vue-cli 延迟加载代码在定义为 lambda 时不起作用

Laravel-vuejs(Vue 路由器)Javascript 在 onchange url 中不起作用

b-list-group-item 中的 v-bind 在带有 bootstrap-vue 的 vue CLI-app 中不起作用

API 路由在 Laravel VueJS 应用程序中不起作用

使用 tailwindcss 构建 dist vue 不起作用