Php 在我的主视图中包括包视图

Php 在我的主视图中包括包视图,php,laravel,laravel-5.3,laravel-blade,Php,Laravel,Laravel 5.3,Laravel Blade,我在我的Laravel项目中有一个包,它有自己的视图。我需要在项目的主视图中包含该视图。我的包名为Tkabir\Somepackage。在我的项目的config/app.php中,我将包的服务提供者包括为 'providers' => [ /* * Package Service Providers... */ Tkabir\Somepackage\SomeServiceProvider::class, ] 还包括包的外观别名,如 'aliases'

我在我的Laravel项目中有一个包,它有自己的视图。我需要在项目的主视图中包含该视图。我的包名为Tkabir\Somepackage。在我的项目的config/app.php中,我将包的服务提供者包括为

'providers' => [
    /*
     * Package Service Providers...
     */
    Tkabir\Somepackage\SomeServiceProvider::class,
]
还包括包的外观别名,如

'aliases' => [
    /*
     */
    'Somepackage' => Tkabir\Somepackage\Facade\Somepackage::class,
]
但是,当我尝试将包中的视图包括在主视图中时,如下所示:

@include('Somepackage::welcome')
…如果welcome.blade.php是我的软件包中的刀片视图文件,则会显示以下错误:

FileViewFinder.php第112行出现错误异常: 没有为[Somepackage]定义提示路径。(视图:E:\xampp\htdocs\laravel->projects\test\u package\resources\views\welcome.blade.php)

这里似乎有什么问题


如果有人需要查看文件,这里有指向Github中我的包的链接:

@include
包含一个视图。您正在为一个类调用一个方法

您正确地将配置包括在

$this->publishes([
    .'/Config/somepackage.php' => config_path('somepackage.php'),
], 'config');
您需要在服务提供商的
boot()
视图方法中对视图执行相同的操作:|标题:发布视图

您还需要像运行配置一样运行
php artisan vendor:publish
,并使用
@include


请看我提供的链接,获取有关在Laravel中构建软件包的完整文档

。另外,如果有人具有较高的代表性,请编辑我文章的标题,使其更有意义?我开始写标题,但后来完全忘了完成它-最好是将您的包视图发布到laravel资源目录,这将很容易访问。非常感谢!完全按照你说的去做,效果很好!但是,我在包的视图中有一些变量是从controller/config定义的。因此,为了在我的主视图中使用这些变量,我还必须从包中发布控制器和配置文件,对吗?最好将控制器留给Laravel,而只是在包中创建一个类。然后在加载需要包含的视图的其中一个控制器中调用该类,然后传入该数据。