html表单不允许修改,[问题]如何在表单里定义(form)仅仅可读,不可修改的列?
經過我不懈努力的尋找及測試,現在有一個解決方案可以解決type='form'表單里設置只讀字段。只需要覆寫columns中的renderFormItem字段即可。下面以設置用戶名只讀為例:
pro-table版本:"@ant-design/pro-table": "^2.9.16"
columns配置
import { useRef, useState } from 'react';
...
const [updateFormValues, setUpdateFormValues] = useState({});
const columns = [
{
title: '用戶名',
dataIndex: 'username',
// 重點在下面代碼
renderFormItem: (_, { type, defaultRender, ...rest }, form) => {
if (type === 'form') {
// 返回新的組件
return {updateFormValues.username}
}
return defaultRender(_);
}
},
]
ProTable配置
type="form"
form={{
initialValues: updateFormValues,
}}
rowKey="id"
columns={columns}
rowSelection={{}}
/>
效果圖:
參考資料:
總結
以上是生活随笔為你收集整理的html表单不允许修改,[问题]如何在表单里定义(form)仅仅可读,不可修改的列?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pta龟兔赛跑Java_PTA-龟兔赛跑
- 下一篇: Oracle 常用SQL语句大全(精)