Livewire 无效的箭头函数参数
Livewire invalid arrow-function arguments on action
我正在使用 Laravel 购物车插件测试 Livewire。要将商品添加到购物车,您需要调用一个函数,传入 ID、名称、数量、价格和可选的元数据数组:
<button wire:click.prevent="addToCart('{{ $id }}', '{{ $product_name}}', 1, {{ $price }}, ['size' => '{{ $size }}'])">Add to Cart</button>
呈现的 HTML 看起来很完美,但是当我单击按钮时,我得到:
Uncaught SyntaxError: invalid arrow-function arguments (parentheses around the arrow-function may help)
好像不喜欢数组赋值中的=>。有人知道解决方法吗?
javascript 中没有关联数组这样的东西,它是一个对象,因此您需要提供一个有效的对象(如果您仍然希望它具有相同的结构)。
<button wire:click.prevent="addToCart('{{ $id }}', '{{ $product_name}}', 1, {{ $price }}, {{json_encode(['size' => $size ])}})">Add to Cart</button>
或
@json(['size' => $size ]) //instead of {{json_encode(['size' => $size ])}}
我正在使用 Laravel 购物车插件测试 Livewire。要将商品添加到购物车,您需要调用一个函数,传入 ID、名称、数量、价格和可选的元数据数组:
<button wire:click.prevent="addToCart('{{ $id }}', '{{ $product_name}}', 1, {{ $price }}, ['size' => '{{ $size }}'])">Add to Cart</button>
呈现的 HTML 看起来很完美,但是当我单击按钮时,我得到:
Uncaught SyntaxError: invalid arrow-function arguments (parentheses around the arrow-function may help)
好像不喜欢数组赋值中的=>。有人知道解决方法吗?
javascript 中没有关联数组这样的东西,它是一个对象,因此您需要提供一个有效的对象(如果您仍然希望它具有相同的结构)。
<button wire:click.prevent="addToCart('{{ $id }}', '{{ $product_name}}', 1, {{ $price }}, {{json_encode(['size' => $size ])}})">Add to Cart</button>
或
@json(['size' => $size ]) //instead of {{json_encode(['size' => $size ])}}