免责声明:这不完全是一个编程问题,我正在征求您的意见。如果此帖子不属于此处,请告诉我,我将其删除。
我正在使用Laravel和VueJS计划一个相当大的应用程序。我的主要问题是最好的方法是什么?
该应用将涉及用户注册,登录,不同的用户角色和权限,个人资料页面等。
使用Laravel路由器加载页面并为每个页面创建多个Vue实例是一个好主意吗?也就是说,让一个Vue实例处理首页,让另一个Vue实例处理个人资料页面等?
还是创建一个具有多个组件的Vue实例并纯粹将Laravel用作API服务器更好?
您是否有任何教程或资源可以帮助我决定采用哪种方法?
如果您对此有意见,我将不胜感激。
感谢您阅读:)
===== 更新
感谢您的答复和您在此上花费的时间。我还有一个问题。可以说我决定使用MPA,并且我有1个Vue应用程序来处理一页,是否可以为每一页使用Vue路由器?例如 '/个人资料页面将由laravel呈现 / profile之后的所有内容均应由Vue'
处理现在,如果我希望VueJS处理路由,则将其放入web.php
Route::get('/{any?}', function () {
return view('vueentrypoint');
})->where('any', '[\/\w\.-]*');
我可以做类似的事情
Route::get('/profile/{any?}', function () {
return view('profileentry');
})->where('any', '[\/\w\.-]*');
Route::get('/user/{any?}', function () {
return view('userentry');
})->where('any', '[\/\w\.-]*');
答案 0 :(得分:2)
如果在Laravel实例中需要多个实例,则应将具有多个Vue实例的应用程序分开。例如,您有一个电子商务Web应用程序,并且您有三个区域,它们分别是:
注意:也许客户仪表板和电子商务应用程序可以是其中之一,但我喜欢将客户仪表板与所有事物分开。
三个应用程序可以与三个Vue实例分开。最好只为一页创建新的Vue实例。
Route::get('/w/{any?}', 'SpaController@worker')->where('any', '.*')->name('spa.worker');
Route::get('/c/{any?}', 'SpaController@customer')->where('any', '.*')->name('spa.customer');
Route::get('{any}', 'SpaController@website')->where('any', '.*')->name('spa.website');