Пропеллер defaultValue
в AntD используется только при первом рендеринге, поскольку useEffect
запускается после первого рендеринга, в результате вы не получите значение по умолчанию для каскадера. Установка этого впоследствии не имеет никакого эффекта. Если вы хотите использовать defaultValue
, вы можете убедиться, что при рендеринге каскадом вы уже установили значение по умолчанию.
const [defaultVal, setDefaultVal] = useState();
useEffect(() => {
setDefaultVal(['zhejiang', 'hangzhou', 'xihu']);
}, []);
return (
<div>
{defaultVal && (
<Cascader
defaultValue={defaultVal}
options={options}
onChange={onChange}
/>
)}
</div>
)
Вы также можете использовать управляемый компонент с value
, если хотите каскад рендерился во все времена.
Codesandbox