系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 网络编程 > PHP编程 > 详细页面

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

时间:2020-02-03来源:系统城作者:电脑系统城

本文实例讲述了laravel框架学习笔记之组件化开发实现方法。分享给大家供大家参考,具体如下:

1.第一个难点,就是把本地的组件引入到项目中,进行开发和测试,这个已经解决了

2.就是需要发布组件中的配置文件到项目中

3.就是怎么在组建中加载组建中的视图view层

视图

你需要告诉 laravel 视图的位置才能使 laravel 加载包中的视图。你可以通过服务提供者的 loadViewsFrom 方法。loadViewsFrom 方法接受两个参数:视图的路径和包的名称。比如,如果你的包名称是“courier”,你应该像下面一样在 boot 中添加:


 
  1. /**
  2. * Perform post-registration booting of services.
  3. *
  4. * @return void
  5. */
  6. public function boot()
  7. {
  8. $this->loadViewsFrom(__DIR__.'/path/to/views', 'courier');
  9. }
  10.  

包视图的使用方式是通过 package::view 类似的语法引用的。所以,你可以像这样从 courier 包中引入 admin 视图:


 
  1. Route::get('admin', function () {
  2. return view('courier::admin');
  3. });
  4.  

4.就是数据的迁移,和数据的填充,命令行安装组件(数据库和配置文件,以及一些其他基本的操作,需要在命令行执行)

需要把服务提供者写入组件的composer中,供程序提前注册


 
  1. "extra":{
  2. "laravel":{
  3. "providers":[
  4. "ShineYork\\LaravelShop\\Wap\\Member\\Providers\\MemberServiceProvider"
  5. ]
  6. }
  7. }
  8.  

在服务提供者中提供了加载console的命令的方法,把写好的命令类注入到方法中即可


 
  1. namespace ShineYork\LaravelShop\Wap\Member\Providers;
  2. use Illuminate\Support\Facades\Route;
  3. use Illuminate\Support\ServiceProvider;
  4. use Illuminate\Support\Arr;
  5. class MemberServiceProvide extends ServiceProvider {
  6. protected $commands = [
  7. \ShineYork\LaravelShop\Wap\Member\Console\Commands\InstallCommand::class,
  8. ];
  9. public function boot(){
  10. $this->commands($this->commands);
  11. }
  12. }
  13.  

5.命令行执行发布配置文件和视图


 
  1. //猜测可能是命令行发布的服务提供者 前面的命令是执行发布,后面的参数是发布服务提供者的位置
  2.  
  3. php artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"
  4.  

6.数据库迁移和数据填充

7.组件加载console

8.执行我们需要用代码执行的命令


 
  1. public function handle()
  2. {
  3. // call
  4. $this->call('migrate');
  5. $this->call('vendor:publish', [
  6. // 参数表示 => 参数值
  7. "--provider"=>"ShineYork\LaravelShop\Wap\Member\Providers\MemberServiceProvider"
  8. ]);
  9. // echo '这是测试wap-member的安装命令';
  10. }
  11.  

9.快速创建composer 组件基础架构的组件(山药开发的组件)


 
  1. composer global require shineyork/laravel-package-maker:2.0
  2.  

更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

分享到:

相关信息

  • Thinkphp框架+Layui实现图片/文件上传功能分析

    这篇文章主要介绍了Thinkphp框架+Layui实现图片/文件上传功能,结合实例形式详细分析了Thinkphp+Layui实现图片文件上传的具体步骤、原理与相关操作技巧...

    2020-02-07

  • Laravel框架自定义分页样式操作示例

    这篇文章主要介绍了Laravel框架自定义分页样式操作,结合实例形式详细分析了laravel框架自定义分页样式的具体操作步骤、实现方法及相关注意事项,需要的朋友可以参考下...

    2020-02-03

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载