在laravel blade系统中,当我们想要包含一个部分blade文件时,我们必须每次为每个文件写入完整的路径。当我们重命名一个文件夹时,我们将不得不检查其中的每个文件的@include。有时候用相对路径来包含它真的很容易。有什么办法吗?
例如,我们在此路径中有一个刀片文件:
resources/views/desktop/modules/home/home.blade.php
我需要在该文件附近包含一个刀片文件:
@include('desktop.modules.home.slide')
对于相对路径,它会是这样的:
@include('.slide')
有什么办法可以做到吗?
4条答案
按热度按时间j91ykkif1#
如果有人仍然对当前视图文件相对路径感兴趣,请将此代码放在AppServiceProvider.php或任何您希望的提供程序的 Boot 方法中
然后用
包含兄弟目录中的content.blade.php,称为partials
祝大家好运
mklgxw1f2#
有一个(现在未维护的)软件包同时执行相对和绝对包含(
lfukumori/laravel-blade-include-relative
),使用@include
,@includeIf
,@includeWhen
,@each
和@includeFirst
指令。我刚把它拉到一个项目中,它工作得很好。vatpfxk53#
一个圆滑的选项,如果你想组织在子文件夹中查看文件:
然后在视图刀片中(或您想要包含的其他任何位置):
ckx4rj1h4#
你需要创建自定义的刀片指令,原生的
include
指令不这样工作。阅读此页以了解如何创建自定义刀片指令:
https://scotch.io/tutorials/all-about-writing-custom-blade-directives
然后在刀片文件中,你可以使用相对路径来包含视图文件:
我试着告诉你这个想法。试着测试你自己