0
错误:BindingResolutionException和目标未实例化
BindingResolutionException in Container.php line 887:
Target [App\Helpers\Contracts\AccessTokenInterface] is not instantiable.
路线:
Route::get('/', '[email protected]');
控制器:
namespace App\Http\Controllers;
use App\Helpers\Contracts\AccessTokenInterface;
class LoginController extends Controller
{
public function handleProviderCallback(AccessTokenInterface $accessTokenInstance)
{
return $accessTokenInstance->getSomething();
}
}
提供者:
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use App\Helpers\Contracts\AccessTokenInterface;
use AccessToken;
class TokenServiceProvider extends ServiceProvider
{
protected $defer = true;
public function boot()
{
//
}
public function register()
{
$this->app->bind('AccessTokenInterface::class', function(){
return new AccessToken();
});
}
}
助手:
namespace App\Helpers;
use App\Helpers\Contracts\AccessTokenInterface;
class AccessToken implements AccessTokenInterface
{
protected $something;
public function setSomething()
{
$something = 100;
}
public function __construct()
{
$this->setSomething();
}
public function getSomething(){
return $something;
}
接口:
namespace App\Helpers\Contracts;
Interface AccessTokenInterface
{
public function getSomething();
public function setSomething();
}
我已经注册的供应商提供商和的accessToken在Helper的别名。
我已阅读一些计算器的答案,但无法找到解决方案。我是新来的。
我哪里去错了?
还是相同的:(...... – NaMo
尝试'$这个 - > APP->绑定(AccessTokenInterface ::类,的accessToken: :class);' –
没有再次工作:(我也做了'php工匠明确编译'和'配置:清除'。 – NaMo