Laravel 8 構(gòu)造注入

2021-07-13 16:00 更新

Laravel 服務(wù)容器 被用于解析所有的 Laravel 控制器。因此,您可以在控制器的構(gòu)造函數(shù)中使用類型提示需要的依賴項(xiàng)。聲明的解析會(huì)自動(dòng)解析并注入到控制器實(shí)例中去:

<?php

namespace App\Http\Controllers;

use App\Repositories\UserRepository;

class UserController extends Controller
{
    /**
     * 用戶 repository 實(shí)例。
     */
    protected $users;

    /**
     * 創(chuàng)建一個(gè)新的控制器實(shí)例。
     *
     * @param  UserRepository  $users
     * @return void
     */
    public function __construct(UserRepository $users)
    {
        $this->users = $users;
    }
}

您亦可類型提示 Laravel 契約 ,只要它能夠被解析。取決于您的應(yīng)用,注入依賴到控制器可能會(huì)提供更好的可測(cè)試性。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)