Как добавить пользовательский метод в класс ответа Люмена - PullRequest
0 голосов
/ 15 мая 2018

Я использую метод ответа withHeaders():

return response(view('pages.top.index', compact('data')))->withHeaders(['one-param' => 'data', 'second-param' => 'data2' ...);

И у меня есть несколько одинаковых параметров, которые я вставляю в метод withHeaders() почти в каждом действии контроллера. Есть ли способ, которым я могу добавить свой собственный метод и связать его как:

return response(view('pages.top.index', compact('data')))->customMethod('data', 'data2', ....);

1 Ответ

0 голосов
/ 15 мая 2018

Ответ является макрообъектом, поэтому вы можете добавить его к поставщику услуг:

\Illuminate\Http\Response::macro('customMethod', function () { 
      //Method body
      return $this; //To chain it
}); 

Примечание: Я стараюсь избегать этого, потому что это сильно затрудняет работу IDE с подсказками типов.

Если проблема заключается в необходимости передавать одни и те же данные снова и снова, вы также можете рассмотреть возможность совместного использования данных со всеми представлениями

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...