Laravel在JavaScript中的路径

时间:2019-07-10 14:33:28

标签: javascript laravel

我在JS中使用

$('.' + buttonMulti.data('name')).append('<img src="/uploads/gallery/' 
          + response.file + '" style="max-height: 150px;">');

我需要使用{{asset('')}}这样的东西:

$('.' + buttonMulti.data('name')).append('<img src="{{asset('/uploads/gallery/' 
          + response.file + '')}}" style="max-height: 150px;">');

但是我不知道它是如何制造的。我总是对路径有疑问。在上传img之后,没有显示任何内容。因为这条路

{{asset('/uploads/gallery/'+ response.file + '')}}"

无法正确连接JS。

3 个答案:

答案 0 :(得分:1)

您正在混合使用JS和PHP。

asset('path')

是Blade / PHP函数,您尝试使用Javascript代码连接参数。这行不通。

您必须使用:

$('.' + buttonMulti.data('name'))
      .append('<img src="{{ asset('/uploads/gallery/') }}'+ response.file +'" 
                 style="max-height: 150px;" />');

我不确定asset()是否在修剪/,请查看源代码以查看路径。也许您需要在Javascript代码中添加一个/

答案 1 :(得分:0)

$('.' + buttonMulti.data('name')).append("<img src=\"{{asset('/uploads/gallery/' + response.file + '')}}\" style='max-height: 150px;'>");

我能看到的问题是您的双引号和单引号有些混乱。尝试以上方法。

如果要在字符串中使用双引号和单引号,请确保将其转义,否则单引号将嵌套在双引号内。

如果要在双引号中使用双引号,请确保将其转义。

答案 2 :(得分:0)

首先使用karabe的CLI并运行以下命令来创建存储的快捷方式。

php artisan storage:link

然后点击以下链接,了解laravel默认文件上传技术。

https://laravel.com/docs/5.8/requests#storing-uploaded-files

https://laravel.com/docs/5.8/filesystem 然后,最后检查以下文档以了解如何检索图像链接-