案例(L5.4)
目前正在尝试使用package development Laravel商品编写api包装器。
我有ServiceProvider
绑定模型(Niki::class
)
class NikiServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
$this->publishes([
__DIR__ . '/config/niki.php' => config_path('niki.php'),
]);
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
$this->app->bind('niki', function () {
return new Niki;
});
}
}
注册组件名称的Facade
class Facade extends \Illuminate\Support\Facades\Facade
{
/**
* Get the registered name of the component.
*
* @return string
*/
public static function getFacadeAccessor()
{
return 'niki';
}
}
和model
class Niki extends Model
{
/**
* Config
*
* @var array
*/
public function __construct()
{
$this->config = config('niki')['api_key'];
}
public static function getHouses()
{
$response = $this->config;
return $response;
}
}
以上文件位于packages/prsc/niki/src
,正在使用psr-4自动加载加载:
"psr-4": {
"App\\": "app/",
"PRSC\\Niki\\": "packages/prsc/niki/src/"
},
错误
所以现在我的问题是,ServiceProvider中的绑定因为找不到文件而返回FatalError。
NikiServiceProvider.php第37行中的FatalThrowableError:Class 'PRSC \ Niki'未找到
答案 0 :(得分:1)
我认为它只是一个命名空间问题。我不确定我对你的命名空间有什么线索,但这里应该有用(如果我没有误解):
替换:
return new Niki;
人:
return new \PRSC\Niki\Niki;
如果不起作用,请在您粘贴的每个代码段中添加命名空间。