Javascript alpine.js为循环嵌套-x-show仅在子项上
是否可以仅在所选项目上绑定x-show 我有一个数据数组,[{firstname:'test',meetings:'[{'day':'17','month':'02'},{'day':'18','month':'02'}]等等] 我只想显示用户,当我点击用户时,我想显示会议。与tablator js(groupby)一样,问题是,当我单击一个用户时,所有其他会议也会显示出来,因为全局变量open已经更改 霉菌代码:Javascript alpine.js为循环嵌套-x-show仅在子项上,javascript,tailwind-css,alpine.js,Javascript,Tailwind Css,Alpine.js,是否可以仅在所选项目上绑定x-show 我有一个数据数组,[{firstname:'test',meetings:'[{'day':'17','month':'02'},{'day':'18','month':'02'}]等等] 我只想显示用户,当我点击用户时,我想显示会议。与tablator js(groupby)一样,问题是,当我单击一个用户时,所有其他会议也会显示出来,因为全局变量open已经更改 霉菌代码: <div class="w-full">
<div class="w-full">
<template x-for="user in data">
<div class="block">
<div class="bg-primary-300 rounded-lg border text-lg" >
<div x-html="user.firstname" class="font-bold hover:bg-gray-400 cursor-pointer" @click="{open = !open}"> </div>
<div x-show="open">
<div class="block">
<template x-for="meet in user.meetings">
<div class="flex ml-32 gap-2 border-b border-gray-700">
<div x-text="meet.day">
</div>
<div x-text="meet.month ">
</div>
</template>
</div>
</div>
</div>
</div>
</template>
</div>
我怎样才能解决这个问题
感谢您的帮助,假设您有用户id,干杯Martin。您需要保存已单击的用户id,然后在打开的id与当前正在迭代的用户id匹配时切换打开 您可以使用
@click=“open=user.id”
和x-show=“open==user.id”
谢谢雨果!!你是个很棒的人!您的解决方案没有切换,但它会打开用户会议,并在我单击其他用户后将其关闭。但在我点击同一用户后,它不会关闭。你明白我的意思吗?@click=“open=open==user.id?null:user.id”