扩展 Laravel 5 的 Response Facade 以包含更多助手?
Extend Laravel 5's Response Facade to include further helpers?
我正在尝试允许用户执行类似 response()->yaml(['their content'])
的操作,但我不明白我将如何继续将我的 YAML 方法注入到 response() (ResponseFactory) facade。
是否有任何指南可以解释如何执行此操作?或者也许是某人的快速描述?这是我第一次尝试为 Laravel 构建一个包,它也将是开源的!
我查看了 ,但不幸的是我没有看到它的用例,我认为它的重点不是添加一个将通过 response()
调用的附加方法。
你可以使用 Response Macros
来实现你的目标。
在 AppServiceProvider
的 boot
方法中(或在 ServiceProvider 包中)添加以下内容:
Response::macro('yaml', function ($content) {
return yaml_whatever($content); //Use your implementaion here
});
现在,您可以使用 return response()->yaml($content);
我正在尝试允许用户执行类似 response()->yaml(['their content'])
的操作,但我不明白我将如何继续将我的 YAML 方法注入到 response() (ResponseFactory) facade。
是否有任何指南可以解释如何执行此操作?或者也许是某人的快速描述?这是我第一次尝试为 Laravel 构建一个包,它也将是开源的!
我查看了 response()
调用的附加方法。
你可以使用 Response Macros
来实现你的目标。
在 AppServiceProvider
的 boot
方法中(或在 ServiceProvider 包中)添加以下内容:
Response::macro('yaml', function ($content) {
return yaml_whatever($content); //Use your implementaion here
});
现在,您可以使用 return response()->yaml($content);