Reactjs antd级联器';如果设置为useEffect,则默认值不起作用

Reactjs antd级联器';如果设置为useEffect,则默认值不起作用,reactjs,antd,ant-design-pro,Reactjs,Antd,Ant Design Pro,如果硬编码为: 但如果我在useEffect中使用setDefaultValue(),则它不起作用: 常量[defaultValue,setDefaultValue]=useState([]); useffect(()=>{ setDefaultValue(['Global']) },[defaultValue[0]]) 这是一个bug,或者我用错了?AntD中的defaultValueprop只在第一次渲染时使用,因为useffect在第一次渲染后运行,您最终没有级联器的默认值。之后

如果硬编码为:


但如果我在useEffect中使用setDefaultValue(),则它不起作用:


常量[defaultValue,setDefaultValue]=useState([]);
useffect(()=>{
setDefaultValue(['Global'])
},[defaultValue[0]])

这是一个bug,或者我用错了?

AntD中的
defaultValue
prop只在第一次渲染时使用,因为
useffect
在第一次渲染后运行,您最终没有级联器的默认值。之后设置它不会产生任何效果。如果要使用
defaultValue
,可以确保在cascader渲染时,已经设置了默认值

const [defaultVal, setDefaultVal] = useState();
useEffect(() => {
  setDefaultVal(['zhejiang', 'hangzhou', 'xihu']);
}, []);
return (
  <div>
      {defaultVal && (
        <Cascader
          defaultValue={defaultVal}
          options={options}
          onChange={onChange}
        />
      )}
  </div>
)
const[defaultVal,setDefaultVal]=useState();
useffect(()=>{
setDefaultVal([‘浙江’、‘杭州’、‘西湖’]);
}, []);
返回(
{defaultVal&&(
)}
)
如果希望始终渲染级联器,还可以使用具有
值的受控组件


AntD中的
默认值
道具仅在第一次渲染时使用,因为
useffect
在第一次渲染后运行,因此最终没有级联器的默认值。之后设置它不会产生任何效果。如果要使用
defaultValue
,可以确保在cascader渲染时,已经设置了默认值

const [defaultVal, setDefaultVal] = useState();
useEffect(() => {
  setDefaultVal(['zhejiang', 'hangzhou', 'xihu']);
}, []);
return (
  <div>
      {defaultVal && (
        <Cascader
          defaultValue={defaultVal}
          options={options}
          onChange={onChange}
        />
      )}
  </div>
)
const[defaultVal,setDefaultVal]=useState();
useffect(()=>{
setDefaultVal([‘浙江’、‘杭州’、‘西湖’]);
}, []);
返回(
{defaultVal&&(
)}
)
如果希望始终渲染级联器,还可以使用具有
值的受控组件