Closed guanguans closed 2 years ago
不知可否提供一个特性 Traits。我个人更喜欢 Traits 的方式 use 到 Controller 中去使用。
我目前的做法是这样的
/** * @method JsonResponse|JsonResource accepted($data = null, string $message = '', string $location = '') * @method JsonResponse|JsonResource created($data = null, string $message = '', string $location = '') * @method JsonResponse|JsonResource noContent(string $message = '') * @method JsonResponse|JsonResource localize(int $code = 200, array $headers = [], int $option = 0) * @method JsonResponse|JsonResource ok(string $message = '', int $code = 200, array $headers = [], int $option = 0) * @method JsonResponse|JsonResource success($data = null, string $message = '', int $code = 200, array $headers = [], int $option = 0) * @method JsonResponse|JsonResource errorBadRequest(?string $message = '') * @method JsonResponse|JsonResource errorUnauthorized(string $message = '') * @method JsonResponse|JsonResource errorForbidden(string $message = '') * @method JsonResponse|JsonResource errorNotFound(string $message = '') * @method JsonResponse|JsonResource errorMethodNotAllowed(string $message = '') * @method JsonResponse|JsonResource errorInternal(string $message = '') * @method JsonResponse fail(string $message = '', int $code = 500, $errors = null, array $header = [], int $options = 0) * * @see \Jiannei\Response\Laravel\Response */ class Controller extends BaseController { public function __call($name, $arguments) { return app(Response::class)->{$name}(...$arguments); } }
这都已经实现了不是,欢迎 pr :sparkles:
你觉得这样可否
把整个 Response 提取成 JsonResponseable,然后 Response 中再 use 这个特性。这样控制器中就也可以直接用了。
可行,多了一种使用方式。
不知可否提供一个特性 Traits。我个人更喜欢 Traits 的方式 use 到 Controller 中去使用。
我目前的做法是这样的