如何在 Lumen 中执行 {{ asset('/css/app.css') }}?

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

在 Lumen 中,我可以在我的 blade 模板中执行此操作:

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

在Laravel我可以做到

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

我在 Lumen 中必须使用 url 助手吗?

查看 Lumen UrlGenerator source code,Lumen 框架仅支持 urlroute 助手。当然,如果你愿意,你可以编写 asset 帮助程序。

有同样的问题,从 laravel 移动到 lumen。正如@hieu-le 所说,我制作了一个资产助手,如下所示。

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);
    }
}