ANTD 如何实现两个Select框联动效果需要配置啥属性
时间: 2023-08-08 11:14:05 浏览: 110
在 Ant Design 中,可以使用 `Select` 组件的 `onChange` 属性来监听选中项的变化,然后在回调函数中改变数据源,实现两个 `Select` 框的联动效果。
具体实现步骤如下:
1. 定义两个 `Select` 组件,并给它们分别绑定一个 `onChange` 事件处理函数;
2. 在第一个 `Select` 的 `onChange` 事件处理函数中,根据选中的值来更新第二个 `Select` 的数据源;
3. 在第二个 `Select` 的 `onChange` 事件处理函数中,根据选中的值来更新其他相关的数据。
示例代码如下:
```jsx
import { useState } from 'react';
import { Select } from 'antd';
const { Option } = Select;
const App = () => {
const [province, setProvince] = useState('');
const [city, setCity] = useState('');
const handleProvinceChange = (value) => {
setProvince(value);
setCity('');
};
const handleCityChange = (value) => {
setCity(value);
};
const cityOptions = province === 'Zhejiang' ?
['Hangzhou', 'Ningbo', 'Wenzhou'] :
['Shanghai', 'Beijing', 'Guangzhou'];
return (
<>
<Select value={province} onChange={handleProvinceChange}>
<Option value="Zhejiang">Zhejiang</Option>
<Option value="Shanghai">Shanghai</Option>
</Select>
<Select value={city} onChange={handleCityChange}>
{cityOptions.map((item) => (
<Option key={item}>{item}</Option>
))}
</Select>
</>
);
};
export default App;
```
在这个示例中,我们定义了两个 `Select` 组件,分别用来选择省份和城市。当选择省份时,根据不同的省份设置不同的城市选项;当选择城市时,可以根据选中的城市进行其他的操作。这样就实现了两个 `Select` 框的联动效果。
阅读全文