本文实例讲述了laravel框架学习笔记之组件化开发实现方法。分享给大家供大家参考,具体如下:
1.第一个难点,就是把本地的组件引入到项目中,进行开发和测试,这个已经解决了
2.就是需要发布组件中的配置文件到项目中
3.就是怎么在组建中加载组建中的视图view层
视图
你需要告诉 laravel 视图的位置才能使 laravel 加载包中的视图。你可以通过服务提供者的 loadViewsFrom 方法。loadViewsFrom 方法接受两个参数:视图的路径和包的名称。比如,如果你的包名称是“courier”,你应该像下面一样在 boot 中添加:
?
1
2
3
4
5
6
7
8
9
|
/**
* Perform post-registration booting of services.
*
* @return void
*/
public function boot()
{
$this ->loadViewsFrom(__DIR__. '/path/to/views' , 'courier' );
}
|
包视图的使用方式是通过 package::view 类似的语法引用的。所以,你可以像这样从 courier 包中引入 admin 视图:
?
1
2
3
|
Route::get( 'admin' , function () {
return view( 'courier::admin' );
});
|
4.就是数据的迁移,和数据的填充,命令行安装组件(数据库和配置文件,以及一些其他基本的操作,需要在命令行执行)
需要把服务提供者写入组件的composer中,供程序提前注册
?
1
2
3
4
5
6
7
|
"extra" :{
"laravel" :{
"providers" :[
|
在服务提供者中提供了加载console的命令的方法,把写好的命令类注入到方法中即可
?
1
2
3
4
5
6
7
8
9
10
11
12
|
namespace ShineYork\\LaravelShop\\Wap\\Member\\Providers;
use Illuminate\\Support\\Facades\\Route;
use Illuminate\\Support\\ServiceProvider;
use Illuminate\\Support\\Arr;
class MemberServiceProvide extends ServiceProvider {
protected $commands = [
\\ShineYork\\LaravelShop\\Wap\\Member\\Console\\Commands\\InstallCommand:: class ,
];
public function boot(){
$this ->commands( $this ->commands);
}
}
|
5.命令行执行发布配置文件和视图
?
1
2
3
|
//猜测可能是命令行发布的服务提供者 前面的命令是执行发布,后面的参数是发布服务提供者的位置
php artisan vendor:publish --provider= "Encore\\Admin\\AdminServiceProvider"
|
6.数据库迁移和数据填充
7.组件加载console
8.执行我们需要用代码执行的命令
?
1
2
3
4
5
6
7
8
9
10
|
public function handle()
{
// call
$this ->call( 'migrate' );
$this ->call( 'vendor:publish' , [
// 参数表示 => 参数值
"--provider" => "ShineYork\\LaravelShop\\Wap\\Member\\Providers\\MemberServiceProvider"
]);
// echo '这是测试wap-member的安装命令';
}
|
9.快速创建composer 组件基础架构的组件(山药开发的组件)
?
1
|
composer global require shineyork/laravel-package-maker:2.0
|
相关文章
猜你喜欢
- 个人服务器网站搭建:如何选择合适的服务器提供商? 2025-06-10
- ASP.NET自助建站系统中如何实现多语言支持? 2025-06-10
- 64M VPS建站:如何选择最适合的网站建设平台? 2025-06-10
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
TA的动态
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
您的支持,是我们最大的动力!
热门文章
-
2025-05-25 55
-
2025-06-04 40
-
2025-05-27 90
-
2025-05-25 97
-
2025-05-29 26
热门评论