这是问题所在:某些vue路由无法与Laravel路由器一起使用,而其他则可以。
此作品有效:
Route::get('/dishesV2/edit/{id}', function () {
return view('back.nutritionV2.index');
});
这不是:
Route::get('/mealPlansV2/edit/{id}', function () {
return view('back.nutritionV2.index');
});
当我尝试访问第二条路由时抛出的错误是由创建vue组件后调用的路由引发的。创建该组件后,它会调用以下路由:
Route::get('/mealPlansV2/{id}/{day}','MealPlansV2Controller@fetchMealPlanDay');
当我dd这条路由调用的参数时,我具有路由'/ mealPlansV2 / edit / {id}'...的参数...
第二个问题是当我在Laravel中调用route列时:
Route::get('/mealPlansV2/columns',function () {
return view('back.nutritionV2.index');
});
返回的是axios请求“ fetchMealPlans”,该请求在组件“列”内部调用,而不是在vue路由列中...
这是我的Vue路线的样子:
const router = new VueRouter({
mode: 'history',
routes: [
{
path: '/mealPlansV2/columns',
name: 'MealPlansColumns',
component: MealPlansColumns,
},
{
path: '/mealPlansV2/edit/:id',
name: 'MealPlansEdit',
component: MealPlansEdit,
},
{
path: '/dishesV2/columns',
name: 'DishesColumns',
component: DishesColumns,
},
{
path: '/dishesV2/edit/:id',
name: 'DishesEdit',
component: DishesEdit,
},
],
});
只有DishesEdit路线在我的应用中有效。
感谢您的帮助,如果我在某些方面不清楚,请不要犹豫。