2

是否可以从另一个包中覆盖包视图?
当您通过它注册视图路径时,
loadViewsFrom('path/to/views', 'package')
它也会查看
/resources/views/vendor/package
所以您可以在使用包时覆盖视图,
但是有没有办法在不同的包中覆盖视图?

4

1 回答 1

0

是的。

脚步:

  1. 发布要覆盖的包视图:

    php artisan vendor:publish --provider="Another\Package" --tag=views
    
  2. 修改已发布的。

  3. 将修改放在包中的目录中,例如:

     /resources/vendor/another-package/views
    
  4. 使其可用于发布。添加到你的包的服务提供者 boot():

    public function boot()
    {
        $this->publishes([
            __DIR__.'/resources/vendor/another-package/views' =>
            base_path('resources/views/vendor/another-package')
        ], 'views');
    }
    
  5. 发布修改:

    php artisan vendor:publish --provider="Your\Package" --tag=views --force
    

注意:根据需要Another\Package进行更改another-package。在 Laravel 7 中运行良好。

于 2020-03-31T02:07:04.763 回答