lanjianrong vor 5 Jahren
Ursprung
Commit
9209e0f20a
1 geänderte Dateien mit 11 neuen und 1 gelöschten Zeilen
  1. 11 1
      src/components/EditableForm/editableFormItem.jsx

+ 11 - 1
src/components/EditableForm/editableFormItem.jsx

@@ -5,10 +5,14 @@ import React, { useState, useEffect, useRef } from 'react'
 import './index.less'
 
 const EditableFormItem = ({ label, dataIndex, record, dataId, span, editCellType }) => {
+
   const [editing, setEditing] = useState(false)
   const inputRef = useRef(null)
   const [val, setVal] = useState('')
   useEffect(() => {
+    setVal('')
+  }, [])
+  useEffect(() => {
     // 处于编辑状态自动聚焦
     if (editing) {
       inputRef.current.focus()
@@ -19,6 +23,12 @@ const EditableFormItem = ({ label, dataIndex, record, dataId, span, editCellType
     }
   }, [record, editing])
 
+  // 单独设置一个依赖,防止dataId变化
+  useEffect(() => {
+    setVal(record)
+  }, [dataId])
+
+
   const toggleEdit = () => {
     setEditing(!editing)
   }
@@ -61,7 +71,7 @@ const EditableFormItem = ({ label, dataIndex, record, dataId, span, editCellType
             onPressEnter={save}
             onBlur={save}
             defaultValue={val}
-            // onChange={handleOnChange}
+          // onChange={handleOnChange}
           />
         )
         break