我想在Alpine.js组件中使用一个Laravel数组:
$array = Names::get('name')->pluck('name')->toArray();
这将存储以下数据并将其发送到视图:
array(3) { [0]=> string(3) "Foo" [1]=> string(3) "Bar" [2]=> string(3) "Baz" }
我的alpine组件具有指令x-data(我使用的搜索示例来自Getting Started页面):
x-data="{
search: '',
items: ['foo', 'bar', 'baz'],
get filteredItems() {
return this.items.filter(
i => i.startsWith(this.search)
)
}
}"
我需要将$array中的数据插入到x-data指令中,如下所示:
items: $array
但这并不显示数据
我不能使用blade {{ }},因为它不会回显数组
2条答案
按热度按时间7cwmlq891#
在blade中使用@json()指令。这样你的alpine组件应该看起来像这样:
vhmi4jdf2#
如果您使用livewire,则可以始终使用alpine的entangle它接受数组
https://laravel-livewire.com/docs/2.x/alpine-js#sharing-state