Moh*_*tfi 4 components laravel laravel-jetstream
我想在将视图 ( php artisan vendor:publish --tag=jetstream-views
) 从resources/views/vendor/jetstream/components发布到resources/views/path/to/jet/comps后更改默认的 Jetstream 组件
小智 7
您可以通过从 laravel/jetstream 复制组件并将它们放在应用程序中您喜欢的任何位置来完成此操作。
然后您需要使用您自己的版本为 jetstream 类添加别名。
我所做的是复制所有组件
/vendor/laravel/jetstream/src/Http/livewire/
Run Code Online (Sandbox Code Playgroud)
将它们复制到
/app/Http/Livewire/
Run Code Online (Sandbox Code Playgroud)
并将组件中的命名空间更改为
namespace App\Http\Livewire;`
Run Code Online (Sandbox Code Playgroud)
然后打开您的 app/Providers/JetstreamSrviceProvider.php,或者如果您愿意,您可以创建自己的服务提供商或使用 AppServiceProvider.php。
在类定义之前、命名空间定义之后添加以下内容:
use Illuminate\Foundation\AliasLoader;
Run Code Online (Sandbox Code Playgroud)
然后在register方法中添加:
$loader = AliasLoader::getInstance();
$loader->alias('Laravel\Jetstream\Http\Livewire\ApiTokenManager', 'App\Http\Livewire\ApiTokenManager');
$loader->alias('Laravel\Jetstream\Http\Livewire\CreateTeamForm', 'App\Http\Livewire\CreateTeamForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\DeleteTeamForm', 'App\Http\Livewire\DeleteTeamForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\DeleteUserForm', 'App\Http\Livewire\DeleteUserForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\LogoutOtherBrowserSessionsForm', 'App\Http\Livewire\LogoutOtherBrowserSessionsForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\NavigationDropdown', 'App\Http\Livewire\NavigationDropdown');
$loader->alias('Laravel\Jetstream\Http\Livewire\TeamMemberManager', 'App\Http\Livewire\TeamMemberManager');
$loader->alias('Laravel\Jetstream\Http\Livewire\TwoFactorAuthenticationForm', 'App\Http\Livewire\TwoFactorAuthenticationForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\UpdatePasswordForm', 'App\Http\Livewire\UpdatePasswordForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\UpdateProfileInformationForm', 'App\Http\Livewire\UpdateProfileInformationForm');
$loader->alias('Laravel\Jetstream\Http\Livewire\UpdateTeamNameForm', 'App\Http\Livewire\UpdateTeamNameForm');
Run Code Online (Sandbox Code Playgroud)
然后运行
composer dump-autoload
Run Code Online (Sandbox Code Playgroud)
然后,您可以打开您的组件版本并修改视图路径(如果您愿意)或您想要执行的任何其他操作。
我已经将 CMS 构建为一个包,并从一个运行良好的包中完成了此操作,这意味着我们可以使用自己的视图和更新的组件来发送该包。