【问题标题】:Put array inside attribute of blade template将数组放入刀片模板的属性中
【发布时间】:2019-02-23 09:22:16
【问题描述】:
我在刀片模板中将图像设置为数组内部属性时遇到了一些问题。通常我们在 HTML 代码中使用它
<div data-zs-src='["fronend/image/1.jpg", "fronend/image/2.jpg", "fronend/image/3.jpg"]' data-zs-overlay="dots">
<!--some code-->
</div>
谁能告诉我如何在 Blade 模板中做到这一点?
【问题讨论】:
标签:
jquery
laravel-5
laravel-blade
【解决方案1】:
您可以在刀片标签的开头使用 @ 符号在刀片模板中 escape 数据。
所以在你的情况下:
<div data-zs-src='@{{ ["fronend/image/1.jpg", "fronend/image/2.jpg", "fronend/image/3.jpg"] }}' data-zs-overlay="dots">
<!--some code-->
</div>
blade 不会处理此标签内的所有数据。
【解决方案2】:
例如,您可以将数组作为变量 $my_array 发送到刀片视图,然后将其附加到属性。
在行动:
$my_array = "[".implode(',', ["fronend/image/1.jpg", "fronend/image/2.jpg", "fronend/image/3.jpg"])."]";
在视图中:
<div data-zs-src='{{ $my_array }}' data-zs-overlay="dots">
如果你有静态数组并且直接调用你的视图,你可以在刀片中定义变量,比如:
@php $my_array = "[".implode(',', ["fronend/image/1.jpg", "fronend/image/2.jpg", "fronend/image/3.jpg"])."]" @endphp
<div data-zs-src='{{ $my_array }}' data-zs-overlay="dots">