今天早上我醒来时带着一个愚蠢的问题。你可以把刀片JavaScript变量内:在JavaScript变量中使用刀片
var NoImg = '{{ asset('img/ni-img.png') }}';
将输出作为字符串,我需要它来输出图像
今天早上我醒来时带着一个愚蠢的问题。你可以把刀片JavaScript变量内:在JavaScript变量中使用刀片
var NoImg = '{{ asset('img/ni-img.png') }}';
将输出作为字符串,我需要它来输出图像
是的 - 这将直接注入路径到您的图像传送到JS字符串的单引号。
如果您需要,然后使用该字符串作为一个图像,你需要设置一个img
.src
的路径,像
document.getElementByID('myImage').src = '{{ asset('img/ni-img.png') }}'
是。刀片服务器是模板引擎。如果你有一个刀片视图文件,她会在javascript之前执行。在你的情况下,当从服务器返回html时,NoImg将具有助手资产()返回的扩展值。
这将是做工精细:
<?php
// variable from your controller...
$image = 'https://images.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png';
?>
// your js inside of a blade file...
var image = new Image(272, 92);
image.src = '{{ $image }}'; // or asset("path/to/your/image.png")
document.body.appendChild(image);
是的,但最好使用json_encode
,以确保所得到的输出是JavaScript的友好:
var NoImg = {!! json_encode(asset('img/ni-img.png')) !!};
PHP将加了引号(对于字符串),任何必要的转义字符(例如,如果在文件名中有'
),并且会处理更复杂的数据结构,如数组/对象。
感谢您的提示我的男人 – Yosef
是的。刀片服务器是模板引擎。如果你有一个刀片视图文件,她会在javascript之前执行。在你的情况下,当从服务器返回html时,NoImg将具有助手资产()返回的扩展值。 –
你完全可以 - 事实上,我已经使用了这个比Laravel更多的时间。 – Tor
@你是否像我那样做了? – Yosef