我正在迭代權限,如果權限包含在預定義的值(即 val)中,則選中復選框,否則不選中復選框,它做得很好,但是當我單擊呈現的復選框以選中或取消選中它時,它什么也不做。
渲染復選框后,我無法選中或取消選中。我需要你的幫助,謝謝。

uj5u.com熱心網友回復:
這部分代碼沒有顯示主要背景關系。如果您正在使用反應,為什么不使用地圖?
uj5u.com熱心網友回復:
您role.permissions永遠不會更新,因此復選框checked屬性保持其初始值。您是否使用受控組件?如果是這樣,您可以向您添加一個onChange事件處理程式input來更新您的role.permissions.
uj5u.com熱心網友回復:
使用 map 函式和 useState 來控制您的復選框值。
uj5u.com熱心網友回復:
首先,三元運算 inchecked={role?.permissions?.includes(val[i]) ? true : false}是多余的,可以簡化為 just checked={role?.permissions?.includes(val[i])},因為該屬性的值無論如何都是 true 或 false。
其次,通過設定value=為真或假,您將復選框凍結為該值。您可以省略該設定,因為 value 屬性將根據選中或未選中的值提交。此外,通常您分配value=checkedor value=unchecked,而不是 true 和 false。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/460800.html
標籤:javascript 反应
