代码之家  ›  专栏  ›  技术社区  ›  LearnProgramming

laravel,如何将这个blade{{url('')}转换成一个普通的html?

  •  0
  • LearnProgramming  · 技术社区  · 6 年前

    我试图通过innerHTML使用显示图像。在blade中,通常我们会显示这样的图像

    <img src="{{ url('uploads/file/'.$fur->picture) }}"

    但在innerHTML中呢?这样直截了当吗?

    pic.innerHTML="<img src="{{ url('blah/blah/' '"+value.id+"') }}"

    2 回复  |  直到 6 年前
        1
  •  2
  •   Rwd    6 年前

    由于刀片文件中的js,您应该能够执行以下操作:

    pic.innerHTML='<img src="{{ url('blah/blah') }}/' + value.id + '">'
    

    这样,url的基本路径将在服务器上编译,因此当它到达浏览器时,看起来像:

    pic.innerHTML='<img src="www.example.com/blah/blah/' + value.id + '">'
    

    NB公司

    使用 url 函数将删除任何尾部 / 所以你需要将它们添加到你的js中。

        2
  •  1
  •   Devon Bessemer    6 年前

    由于php/laravel是在数据传递给javascript之前呈现的,所以您可以使用blade将变量回送到javascript中(但不能反过来)。您将无法从php访问javascript变量,因此不能包含 value.id 刀片指令的内部。

    您还需要转义src周围的引号或使用单引号

    pic.innerHTML="<img src=\"{{ url('blah/blah/') }}" + value.id + "\" />"
    # or using single quotes:
    pic.innerHTML='<img src="{{ url('blah/blah/') }}' + value.id + '" />'