How to do {{ asset('/css/app.css') }} in L

2019-02-17 01:55发布

问题:

In Lumen, I can do this in my blade template:

{{ url('/css/app.css') }}

In Laravel I could do

{{ asset('/css/app.css') }}

Is the url helper all I have to work with in Lumen?

回答1:

Have look at Lumen UrlGenerator source code, the Lumen framework supports just url and route helpers. Of course, you can write the asset helper if you want.



回答2:

Had the same problem, moving from laravel to lumen. As @hieu-le says, I made an asset helper as below.

if (!function_exists('urlGenerator')) {
    /**
     * @return \Laravel\Lumen\Routing\UrlGenerator
     */
    function urlGenerator() {
        return new \Laravel\Lumen\Routing\UrlGenerator(app());
    }
}

if (!function_exists('asset')) {
    /**
     * @param $path
     * @param bool $secured
     *
     * @return string
     */
    function asset($path, $secured = false) {
        return urlGenerator()->asset($path, $secured);
    }
}