请帮我在这一个,我建立与Vue公司的SPA,登录页面是根页面
Route::get('/', function () {
return view('auth.login');
});
Auth::routes();
Route::get('/home', 'HomeController@index')->name('home');
// this is my HomeController index method
public function index()
{
return view('layouts.app');
}
这与通常的刀片文件登录页面加载,login.blade.php,那么一旦登录成功,它则转到由我的/home
处理的HomeController
。控制器仅呈现布局,其中的Vue将然后从那里接管的图。另外,我使用从jeremykenedy \ LaravelRoles的laravel-角色库,所以我只希望管理员能够与来自权威性,I'ver做了,一切工作就好了相同的寄存器功能注册用户,但现在的问题是,当我是里面的SPA,如果我改变的URL根像http://127.0.0.1:8000
它回到登录页面再次,另外,http://127.0.0.1:8000/register
此亦寄存器刀片文件,而不是我创造的register.vue和路由。我该如何处理?
这是我的Vue路由器
const routes = [
{
name: 'Default',
path: '/',
component: HomeComponent
},
{
name: 'Home',
path: '/home',
component: HomeComponent
},
{
name: 'Register',
path: '/register',
component: RegisterComponent
}
];
当你重装或者尝试去到另一个页面手动就会去Laravel路线,因为你是在Laravel PORT http://127.0.0.1:8000
。只有VUE路线,当你点击一个Link
不通过手动上工作。对于这个问题,我总是试图分裂Laravel和Vue公司。
在你的路由/ web.php你应该有Auth::routes()
指令。摆脱它,取而代之的是
$this->get('admin/login', 'Auth\LoginController@showLoginForm')->name('login');
$this->post('admin/login', 'Auth\LoginController@login');
$this->post('admin/logout', 'Auth\LoginController@logout')->name('logout');
$this->get('admin/register', 'Auth\RegisterController@showRegistrationForm')->name('register');
$this->post('admin/register', 'Auth\RegisterController@register');
$this->get('admin/password/reset', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.request');
$this->post('admin/password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email');
$this->get('admin/password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.reset');
$this->post('admin/password/reset', 'Auth\ResetPasswordController@reset');
现在,你可以摆脱你不需要和与任何看起来合适的替换他们的路线。我希望帮助。