我不知道这是否是树枝的 @component 的正确版本?是渲染吗?
{{ render ('mail::message') }}
{{ render ('mail::button', ['url' => '']) }}
还是我在这里无法编写正确的语法?
答案 0 :(得分:0)
查看Twig的macro
。
对于刀片
<!-- /resources/views/demo.blade.php -->
{{ $slot }}
<!-- component use -->
@component('demo')
content
@endcomponent
基本的Twig语法应该是
{# macro definition #}
{% macro demo(param) %}
{{ param }}
{% endmacro %}
{# macro use #}
{# first import and then you can #}
{{ demo('content') }}
使用from
或import
调用之前,您需要导入宏。要从当前文件导入(使用from
或import
),请使用_self
而不是路径。请参阅文档以获取更多说明
您的示例
{{ render ('mail::button', ['url' => '']) }}
看起来像是来自Blade的@include
,类似
@include('mail::button, ['url' => ''])
为此,Twig的include
可能更合适。 Twig中macro
和include
之间的关系类似于Blade中component
和include
之间的关系。基本的树枝是
{# partial.html #}
{{ url }}
{# partial use #}
{% include 'partial.html' with {url: ''} %}