Saidqb
Saidqb Hanya sekedar bercerita dengan damai

Laravel Url Livewire

full current Url livewire

namespace App\Providers\AppServiceProvider;

1
2
3
4
5
6
7
8
9
10
11
12
use Illuminate\Support\Facades\URL;
public function boot()
{
	URL::macro('livewire_current_url', function () {
	    if (request()->route()->named('livewire.update')) {
	        $previousUrl = url()->previous();
	        return $previousUrl;
	    } else {
	        return request()->fullUrl();
	    }
	});
}

current param url

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
URL::macro('livewire_current_url_param', function () {
    return new class() {
        public function __construct() {}

        public function get($key)
        {

            if (request()->route()->named('livewire.update')) {
                $previousUrl = url()->previous();
                $fullUrl = $previousUrl;
            } else {
                $fullUrl = request()->fullUrl();
            }

            $getParam = null;
            $url_component = parse_url($fullUrl);

            if (isset($url_component['query'])) {
                parse_str($url_component['query'], $params);
                if (isset($params[$key])) {
                    $getParam = $params[$key];
                }
            }

            return $getParam;
        }
    };
});

Rating:

comments powered by Disqus