反应编辑 Table
React Edit Table
我正在尝试编辑单行但编辑所有行,同时还在尝试添加将填充某些行的下拉列表,任何建议或信息将不胜感激。
这是我使用的代码,
<TableBody>
{item.userBankAccount.map((item, index) => {
return (
<TableRow hover key={index}>
{!currentlyEditing ? (
<TextField
label="bankName"
name="bankName"
onChange={(e) => this.onChangeUserBankAccount(e, index)}
type="text"
value={item.bankName || ''}
/>
) : (
<TableCell>{item.bankName}</TableCell>
)}
{!currentlyEditing ? (
<TextField
label="BankAddress"
name="bankAddress"
onChange={(e) => this.onChangeUserBankAccount(e, index)}
type="text"
value={item.bankAddress || ''}
/>
) : (
<TableCell>{item.bankAddress}</TableCell>
)}
{!currentlyEditing ? (
<TextField
label="bankSwift"
name="bankSwift"
onChange={(e) => this.onChangeUserBankAccount(e, index)}
type="text"
value={item.bankSwift || ''}
/>
) : (
<TableCell>{item.bankSwift}</TableCell>
)}
</TableRow>
);
})}
</TableBody>
问题就在这里,
在TableRow
的每一行中你有
{!currentlyEditing ? (
这对所有 TableRow
都是一样的。因此,如果一个人获得 currentlyEditing = true
,那么所有这些人都可以编辑。
解决方案:
只需在TableRow
中取currentlyEditing
的state
因此,TableRow
中的每一个都有自己的 currentlyEditing
状态,
AND,因此同时其他人将不可编辑
我正在尝试编辑单行但编辑所有行,同时还在尝试添加将填充某些行的下拉列表,任何建议或信息将不胜感激。
这是我使用的代码,
<TableBody>
{item.userBankAccount.map((item, index) => {
return (
<TableRow hover key={index}>
{!currentlyEditing ? (
<TextField
label="bankName"
name="bankName"
onChange={(e) => this.onChangeUserBankAccount(e, index)}
type="text"
value={item.bankName || ''}
/>
) : (
<TableCell>{item.bankName}</TableCell>
)}
{!currentlyEditing ? (
<TextField
label="BankAddress"
name="bankAddress"
onChange={(e) => this.onChangeUserBankAccount(e, index)}
type="text"
value={item.bankAddress || ''}
/>
) : (
<TableCell>{item.bankAddress}</TableCell>
)}
{!currentlyEditing ? (
<TextField
label="bankSwift"
name="bankSwift"
onChange={(e) => this.onChangeUserBankAccount(e, index)}
type="text"
value={item.bankSwift || ''}
/>
) : (
<TableCell>{item.bankSwift}</TableCell>
)}
</TableRow>
);
})}
</TableBody>
问题就在这里,
在TableRow
的每一行中你有
{!currentlyEditing ? (
这对所有 TableRow
都是一样的。因此,如果一个人获得 currentlyEditing = true
,那么所有这些人都可以编辑。
解决方案:
只需在TableRow
中取currentlyEditing
的state
因此,TableRow
中的每一个都有自己的 currentlyEditing
状态,
AND,因此同时其他人将不可编辑