Laravel Route :: current()返回null

时间:2019-02-26 15:23:25

标签: php laravel laravel-5.7

我正在尝试使用以下代码行在Laravel 5.7中使用中间件中的当前路由:

private sumbitedWhenValid: boolean = false;

但是我得到...then(() => { ... this.sumbitedWhenValid = !this.form.form.invalid; }); 的空值。有什么想法吗?

2 个答案:

答案 0 :(得分:2)

该路由尚不可用,因为尚未调用路由器。这取决于在您的中间件之前调用什么中间件。

我认为,在以前的中间件中,您可以尝试使用:$route = $request->path();,只是为了确定而不取决于是否正在启动路由器。

答案 1 :(得分:1)

如果您需要访问Route外观,则只想更改中间件在app/Http/Kernel.php中的注册位置。

我敢打赌,您的中间件位于protected $middleware数组中。通常应位于您的$middlewareGroupsweb之一中。或者,如果您需要特定的路由,则可以将其添加到api数组中。

例如,我想从我的$routeMiddleware中间件中访问Route,所以我不得不移动到HandleInertiaRequests,如以下屏幕快照所示:

enter image description here