laravel框架学习笔记之组件化开发实现方法

2025-05-29 0 100

本文实例讲述了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":[

"ShineYork\\\\LaravelShop\\\\Wap\\\\Member\\\\Providers\\\\MemberServiceProvider"

]

}

}

在服务提供者中提供了加载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

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

原文链接:https://blog.csdn.net/qq_22640823/article/details/102836536

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 laravel框架学习笔记之组件化开发实现方法 https://www.kuaiidc.com/105067.html

相关文章

发表评论
暂无评论