如何使用 AngularJs 处理 Laravel 路由?

Posted

技术标签:

【中文标题】如何使用 AngularJs 处理 Laravel 路由?【英文标题】:How to handle Laravel routing using AngularJs? 【发布时间】:2020-05-04 23:49:26 【问题描述】:

我对 Laravel + AngularJs 完全陌生。我想要做的是使用 AngularJs 处理我的 web.php 路由。可能吗?如果是我该怎么做?

【问题讨论】:

【参考方案1】:

如果你有一个 SPA 并且你的应用使用 html5 历史模式,这应该类似于人们经常结合 Laravel 和 VueJS 路由的方式。

您通常会将所有非 Angular 路由放在 routes/web.php 的顶部,然后是您的 SPA 的“包罗万象”路由。这种“包罗万象”的路线基本上是一条不在乎路线长什么样的路线;它只会将其发送到 AngularJS 应用程序。

类似于this answer 或this article 你的routes/web.php 可能看起来像:

Route::resource('Videos', 'VideoController')->middleware('auth','isAdmin');
Route::resource('Categories', 'CategoriesController')->middleware('auth');
...
Route::get('/angularjs_capture?', function () 
 return view('angularjs.index');
)->where('angularjs_capture', '[\/\w\.-]*');

然后您将在 /resources/views/angularjs/index.blade.php 看到一个视图,其中包含您的 SPA 的基本 HTML。

【讨论】:

非常感谢您的回复@Delena Malan。我在我的应用程序中想要的是,如果用户点击一个链接,它不应该重新加载页面,而是在 ng-view 中呈现页面。我可以这样做吗?如何做? 是的,看看ngRoute。它应该做你想要的:)

以上是关于如何使用 AngularJs 处理 Laravel 路由?的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS + Laravel 5 身份验证

如何使用 AngularJS 保护 Laravel 4 中的 API 访问

如何使用AngularJS和Laravel刀片在一起。

Laravel,AngularJS和SEO

如何使用 Laravel API 在 AngularJS 表单中发送 csrf_token()?

如何在 Laravel 5 中处理嵌套的 JSON 对象请求?