【问题标题】:pass php parameters to vue function inside bladee将php参数传递给bladee内部的vue函数
【发布时间】:2022-01-01 19:57:53
【问题描述】:

在我的刀片视图中。

@foreach($r_templates as $key => $rt)
    <button @click="someFunc({{$rt['title'}})">click me</button>
@endforeach

// In my vue script
someFunc(title) { console.log(title); }

上面的代码似乎不起作用,也没有错误。

但是当我将参数更改为'something' 时,它可以工作。

我如何传递PHP variable to a vue function?

【问题讨论】:

  • 函数参数中缺少 someFunc({{$rt['title']}}) 的右方括号

标签: laravel vue.js laravel-blade


【解决方案1】:

参数/值周围没有引号。

使用 JSON 函数确保正确的引号和转义:

'someFunc({{ Js::from($rt['title']) }})'

参考:https://laravel.com/docs/8.x/blade#rendering-json

【讨论】:

  • 这也有效。谢谢
【解决方案2】:

作为您传递的字符串,您需要添加' 'this quote

试试这个

@foreach($r_templates as $key => $rt)
    <button @click="someFunc( '{{$rt['title'}}' )">click me</button>
@endforeach

【讨论】:

  • 该死的。谢谢人
  • 如果标题中有单引号或双引号将不起作用。它也可能允许代码注入。此代码不安全。
猜你喜欢
  • 2018-09-26
  • 2015-02-17
  • 1970-01-01
  • 2021-09-21
  • 2015-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-10
相关资源
最近更新 更多