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

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

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

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

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

视图

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

  /**   * Perform post-registration booting of services.   *   * @return void   */   public function boot()   {    $this->loadViewsFrom(__DIR__.'/path/to/views', 'courier');   }    

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

  Route::get('admin', function () {   return view('courier::admin');   });    

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

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

   "extra":{      "laravel":{        "providers":[          "ShineYork\LaravelShop\Wap\Member\Providers\MemberServiceProvider"        ]      }    }    

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

  namespace ShineYorkLaravelShopWapMemberProviders;  use IlluminateSupportFacadesRoute;  use IlluminateSupportServiceProvider;  use IlluminateSupportArr;  class MemberServiceProvide extends ServiceProvider {    protected $commands = [      ShineYorkLaravelShopWapMemberConsoleCommandsInstallCommand::class,    ];    public function boot(){      $this->commands($this->commands);    }  }    

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

  //猜测可能是命令行发布的服务提供者 前面的命令是执行发布,后面的参数是发布服务提供者的位置    php artisan vendor:publish --provider="EncoreAdminAdminServiceProvider"    

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

7.组件加载console

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

  public function handle()  {      // call      $this->call('migrate');      $this->call('vendor:publish', [       // 参数表示 => 参数值       "--provider"=>"ShineYorkLaravelShopWapMemberProvidersMemberServiceProvider"      ]);      // echo '这是测试wap-member的安装命令';  }    

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

  composer global require shineyork/laravel-package-maker:2.0    

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

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

—-想了解laravel框架学习笔记之组件化开发实现方法分享!且更多的php教程关注<计算机技术网(www.ctvol.com)!!>

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/phpttorial/471414.html

(0)
上一篇 2020年10月26日
下一篇 2020年10月26日

精彩推荐