useControllableValue
兼容状态受控和状态自理
代码演示
非受控
如果 props 中没有 value,则组件内部自理 state
Live Editor
受控
如果 props 有 value 字段,则由父级接管控制 state
Live Editor
API
const [state, setState] = useControllableValue(props: object, options?: Options)
Options
参数 | 说明 | 必选 | 类型 | 默认值 |
---|---|---|---|---|
defaultValue | 默认值 | - | any | - |
defaultValuePropName | 默认值的属性名 | - | string | defaultValue |
valuePropName | 值的属性名 | - | string | value |
onChangePropName | 修改值的函数名 | - | string | onChange |
Result
参数 | 说明 类型 |
---|---|
state | 状态值 |
setState | 修改状态的函数 |