Переходный маршрут после вызова интерфейса

#javascript #vue.js

#javascript #vue.js

Вопрос:

Я попытался перейти по маршруту с помощью vue-router после вызова интерфейса. Он работает нормально в локальной среде, но после упаковки маршрут переходит нормально, но отображается пустая страница, кажется, что компонент не загружен нормально.

Это мой код для динамической загрузки маршрута.

 export function loadPage(url,para,tabTile) {
  var newUrl=url.replace('/', '-');
  var name=newUrl "$"  Math.floor(Math.random ()*1000);
  var havTab=false;
  if(tabTile==null || tabTile==''){
     tabTile="tab";
  }
  //var havTab=isHaveTab(name)
   //if(!havTab){
      var tab = {
          menuId: name,
          name: name,
          title: tabTile,
          type:  "module",
          iframeUrl: ""
         };
        store.commit("common/updateMainTabs",store.state.common.mainTabs.concat(tab));
        //store.state.common.mainTabs = store.state.common.mainTabs.concat(tab);
        store.commit("common/updateMainTabsActiveName",tab.name);
        //store.state.common.mainTabsActiveName = tab.name;
  // }

 //rotue
 //get the main route
  var mainRoutes=null;
   for (var i = 0; i < router.options.routes.length; i  ) {
      var tmp=router.options.routes[i];
      if(tmp.name=='main-dynamic'){
        mainRoutes=tmp;
        break;
      }
   }
  var routes=mainRoutes.children;
  //Determine whether the route exists
 var  flag=isHaveRoute(routes,newUrl)
   if(!flag){
     var route = {
         path: name,
         component: require('@/views/modules/' url '.vue').default||null,
         name: name,
         meta: {
           menuId: name,
           title:  name,
           name:  name,
           isDynamic: true,
           isTab: true,
           iframeUrl: ''
         }
       }
     routes.push(route)
     mainRoutes.children = routes
     router.addRoutes([
       mainRoutes,
       { path: '*', redirect: { name: '404' } }
     ])
   }

 router.push({ name: name,params:para})
 }
 

Ответ №1:

Используете ли вы режим истории маршрутизатора Vue? Если это так, вам необходимо настроить свой веб-сервер для корректного перенаправления запросов на index.html

Документы доступны по этому адресу