ILUMINATE\Contracts\Container\BindingResolutionException : Target[Modules\ThemeStore\View\ViewStorageInterface]Is not instantiable while building[Modules\ThemeStore\Resolver\OnlineStoreThemeResolver].
1. Lighthouse uses a lot of SDL and uses mode instructions. In order to improve your editing experience, you can use the artisan command to generate a definition file. Error: Illuminate\Contracts\Container\BindingResolutionException : target[Modules\ThemeStore\View\ViewStorageInterface]Is not instantiable while building[Modules\ThemeStore\Resolver\OnlineStoreThemeResolver]. as shown in Figure 1
PS E:\wwwroot\object> php artisan lighthouse:ide-helper
Wrote schema directive definitions to E:\wwwroot\object/schema-directives.graphql.
Illuminate\Contracts\Container\BindingResolutionException : Target [Modules\ThemeStore\View\ViewStorageInterface] is not instantiable while building [Modules\ThemeStore\Resolver\OnlineStoreThemeResolver].
at E:\wwwroot\object\vendor\laravel\framework\src\Illuminate\Container\Container.php:978
974| } else {
975| $message = "Target [$concrete] is not instantiable.";
976| }
977|
> 978| throw new BindingResolutionException($message);
979| }
980|
981| /**
982| * Throw an exception for an unresolvable primitive.
Exception trace:
2. Execute the command: php artisan module:list to display a list of all modules. Confirm that the module Themestore is disabled. as shown in Figure 2
PS E:\wwwroot\object> php artisan module:list
+-----------------------+----------+-------+---------------------------------------------------------+
| Name | Status | Order | Path |
+-----------------------+----------+-------+---------------------------------------------------------+
| ThemeStore | Disabled | 0 | E:\wwwroot\object\Modules/ThemeStore |
3. After enabling the module ThemeStore, the same error is still reported
PS E:\wwwroot\object> php artisan module:enable ThemeStore
Module [ThemeStore] enabled successful.
PS E:\wwwroot\object> php artisan lighthouse:ide-helper
Wrote schema directive definitions to E:\wwwroot\object/schema-directives.graphql.
Illuminate\Contracts\Container\BindingResolutionException : Target [Modules\ThemeStore\View\ViewStorageInterface] is not instantiable while building [Modules\ThemeStore\Resolver\OnlineStoreThemeResolver].
at E:\wwwroot\object\vendor\laravel\framework\src\Illuminate\Container\Container.php:978
974| } else {
975| $message = "Target [$concrete] is not instantiable.";
976| }
977|
> 978| throw new BindingResolutionException($message);
979| }
980|
981| /**
982| * Throw an exception for an unresolvable primitive.
Exception trace:
4. Finally found that the reason is that Modules\ThemeStore\Providers\ThemeStoreServiceProvider::Class in the Providers of config/app.php has been annotated. Missing service provider classes. Uncomment, no more errors.
PS E:\wwwroot\object> php artisan lighthouse:ide-helper
Wrote schema directive definitions to E:\wwwroot\object/schema-directives.graphql.
Wrote definitions for programmatically registered types to E:\wwwroot\object/programmatic-types.graphql.
Wrote PHP definitions to E:\wwwroot\object/_lighthouse_ide_helper.php.
It is recommended to add them to your .gitignore file.
![Lighthouse 大量使用 SDL 并利用模式指令。为了改善您的编辑体验,您可以使用 artisan 命令生成定义文件。报错:Illuminate\Contracts\Container\BindingResolutionException : Target [Modules\ThemeStore\View\ViewStorageInterface] is not instantiable while building [Modules\ThemeStore\Resolver\OnlineStoreThemeResolver].](https://www.shuijingwanwq.com/wp-content/uploads/2022/05/1-6.png)
