We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.7.1
No response
const groupData = new Map() newVal.options.forEach(item => { const key = item.group_name if (!groupData.has(key)) { groupData.set(key, []) } groupData.get(key).push(item) }); if (groupData.size > 0) { groupData.forEach((value, key) => { const myArr = Array.from(value) myArr.sort(() => Math.random() - 0.5) groupData.set(key, myArr) }) const arr = [...groupData] this.setData({ group_options: arr }) } else { this.setData({ group_options: [{ key: '', value: newVal.options }] }) }
<t-checkbox-group value="{{checkboxValue}}" bind:change="handleGroupChange"> <block wx:for="{{group_options}}" wx:for-item="group" wx:for-index="g_index" wx:key="g_index"> <view class="group_title" wx:if="{{group[0] != ''}}">{{group[0]}}</view> <block wx:for="{{group[1]}}" wx:for-item="option" wx:for-index="o_key" wx:key="option.id"> <t-checkbox value="{{option.id}}"> </t-checkbox> </block> </block> </t-checkbox-group>
checkbox的选中状态与checkboxValue一致。
紧凑型
3.5.7
多次重新渲染之后,由于myArr.sort(() => Math.random() - 0.5)这个进行乱序排序,导致checkbox的选中状态与checkboxValue不一样。 已经多次确定checkbox正确。 如果删除block直接在checkbox-group里面直接循环这个checkbox进行随机排序,也不会出现问题。
The text was updated successfully, but these errors were encountered:
👋 @LiuXiao617111,感谢给 TDesign 提出了 issue。 请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。
Sorry, something went wrong.
并且有时候,选中一个checkbox,另一个也会被选中,已经确认的是,checkbox的值是肯定不一样的数字。
是因为wx:key="option.id"绑定不正确, 这个key实际上是wx:item的子属性, 所以应该是wx:key="id" 而不是 wx:key="option.id".
No branches or pull requests
tdesign-miniprogram 版本
1.7.1
重现链接
No response
重现步骤
JS
const groupData = new Map() newVal.options.forEach(item => { const key = item.group_name if (!groupData.has(key)) { groupData.set(key, []) } groupData.get(key).push(item) }); if (groupData.size > 0) { groupData.forEach((value, key) => { const myArr = Array.from(value) myArr.sort(() => Math.random() - 0.5) groupData.set(key, myArr) }) const arr = [...groupData] this.setData({ group_options: arr }) } else { this.setData({ group_options: [{ key: '', value: newVal.options }] }) }
view
<t-checkbox-group value="{{checkboxValue}}" bind:change="handleGroupChange"> <block wx:for="{{group_options}}" wx:for-item="group" wx:for-index="g_index" wx:key="g_index"> <view class="group_title" wx:if="{{group[0] != ''}}">{{group[0]}}</view> <block wx:for="{{group[1]}}" wx:for-item="option" wx:for-index="o_key" wx:key="option.id"> <t-checkbox value="{{option.id}}"> </t-checkbox> </block> </block> </t-checkbox-group>
期望结果
checkbox的选中状态与checkboxValue一致。
实际结果
紧凑型
基础库版本
3.5.7
补充说明
多次重新渲染之后,由于myArr.sort(() => Math.random() - 0.5)这个进行乱序排序,导致checkbox的选中状态与checkboxValue不一样。
已经多次确定checkbox正确。
如果删除block直接在checkbox-group里面直接循环这个checkbox进行随机排序,也不会出现问题。
The text was updated successfully, but these errors were encountered: