jd-opensource / jd-opensource/taro-ui
咨询一下:SwipeAction组件里面嵌套 Input组件的问题
- Dominant language
- TypeScript
- Stars
- 4.7k
- Forks
- 740
- PR merge metrics
- No merged PRs in 30d
Description
**问题描述**
嵌套Input的时候,左滑删除Input ,从效果上面看删除的总是最后一个Input
**复现步骤**
```js
// 这里可以贴代码
//state:
state = {
selectedGrantMonth: 1,
serialNumbers: [],
};
//render:
const { serialNumbers } = this.state;
{serialNumbers.map((item, index) => (
))}
//-- 滑动方法
actionClick = (itemIndex, e) => {
const { serialNumbers } = this.state;
if ("1" === e.action) {
// 删除
const filterSerialNumbers = serialNumbers.filter((item, index) => {
return item.index != itemIndex;
});
this.setState({ serialNumbers: [...filterSerialNumbers] });
}
};
// -- input onChange
inputChange = (index, e) => {
const { serialNumbers } = this.state;
const newSerialNumbers = serialNumbers.map((item) => {
if (item.index === index) {
return { index: item.index, value: e };
} else {
return item;
}
});
this.setState({ serialNumbers: newSerialNumbers });
};
```
**期望行为**
**报错信息**
**系统信息**



**补充信息**
当我把option属性放到 组件外部定义 就没有这个问题但是滑动多次就会卡死 滑动无效。
我想了解一下为什么放在面外定义就没问题呢? 跟this有关系吗?
```js
const ACTION_OPTION = [
{
text: "取消",
action: "0",
},
{
text: "删除",
action: "1",
style: {
backgroundColor: "#FF4949",
},
},
];
{serialNumbers.map((item, index) => (
))}
```

Contributor guide
Assessment
This issue has not been assessed yet.