【发布时间】:2018-10-25 00:16:05
【问题描述】:
我有 data.data[key].thumb 和 data.data[key].image 作为变量,这是在 Laravel Blade 模板中的 <script> 标签内。
此行有错误,导致:
使用未定义的常量上传 - 假定为“上传”
代码是:
user_status += '<img src="{{asset(uploads/' + data[key].image + '.' +
data[key].thumb + ')}}" class="img-responsive"
style="height:290px;" alt="360-video-feature" /></div>';
user_status += '<img class="OverlayIcon" src="
{{asset('uploads/video_icon_overlay.png')}}" alt="" />';
【问题讨论】:
-
我觉得你的 user_status 应该是这样的:
user_status += '<img class="OverlayIcon" src=" {{asset(\'uploads/video_icon_overlay.png\')}}" alt="" />';现在我不确定中间的简单引号是否真的被理解为字符串的一部分,而不仅仅是两者都停止和开始标记。 -
我不认为第二个是问题,因为如果我删除第一个错误就消失了
-
当时不知道,就是觉得很奇怪
-
也许您在上传之前缺少单引号?应该是
'uploads/' + data[key].image -
引用只是问题的一部分。看来您正在混合 JS 和 PHP 变量,这不可能按照您的方式进行。这个:
{{ asset(uploads/' + data[key].image + '.' + data[key].thumb + ') }}即使你修正了引号也不起作用。这是因为datavar 只有在您的 Blade 模板编译并显示在浏览器上之后才可用。
标签: javascript php laravel blade