Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

多次更新List的data后, isDelete 失效! #12

Open
wflashy opened this issue Sep 14, 2016 · 10 comments
Open

多次更新List的data后, isDelete 失效! #12

wflashy opened this issue Sep 14, 2016 · 10 comments

Comments

@wflashy
Copy link

wflashy commented Sep 14, 2016

代码如下:
let t = this;
orders.map(function(litem){
return();
})
当我第一次更新orders,isDelte正常,第二更新orders,isDelte失效!

@FE-Girl
Copy link

FE-Girl commented Sep 18, 2016

麻烦把详细代码以及两次的数据源贴出来~

@ghost
Copy link

ghost commented Oct 28, 2016

i found same issue when i use this.setState to re-render list, the delete function is unavailable

@wflashy
Copy link
Author

wflashy commented Nov 2, 2016

@FE-Girl
就拿demo中的Pagelist.js来说:

layout="left"
hasRightIcon={false}
isDelete={true}
demoTitle="左图右文无箭头可滑动删除"
data={[{
imgUrl : "https://img.alicdn.com/tps/TB15YftJFXXXXafXpXXXXXXXXXX-699-698.jpg",
text : "中午一起吃饭吗?",
title : "Alice",
date : "10月12日"
},{
imgUrl : "https://img.alicdn.com/tps/TB1P1vaLpXXXXXxaXXXXXXXXXXX-50-50.jpg",
text : "在哪个会议室?",
title : "Bob",
date : "今天"
}]}/>
如果用this.setState更新data,则isDelete失效,不能滑动删除!

@FE-Girl
Copy link

FE-Girl commented Nov 21, 2016

最新 1.1.12 解决了这个问题,谢谢反馈。

@waitliu
Copy link

waitliu commented Nov 30, 2016

1.1.12 是解决了删除按钮不出来的问题了。
but点击后不会删除本行,dome中点击删除按钮会删除本行的。

@gbk
Copy link
Collaborator

gbk commented Nov 30, 2016

@waitliu 你得在删除事件里面自己操作数据,然后 setState 吧

@waitliu
Copy link

waitliu commented Dec 1, 2016

@gbk demo的版本是不需要的,只要删除事件内处理相对应数据。
还有给list加数据后,setState 也不会刷新,需要重新打开页面才可以看到新数据。这应该是同一个问题导致的。

@FE-Girl
Copy link

FE-Girl commented Dec 4, 2016

@waitliu 我本地测试了下是OK的,点删除的回调里你要把当前这条数据删除并setState,这个事情需要你来做的,组件内部没有实现直接给删除本行,因为是数据驱动的,所有数据都由自己控制。可以看下下边的例子。
image

@waitliu
Copy link

waitliu commented Dec 13, 2016

@FE-Girl 你对比下demo版本和1.1.12版本就知道了,如果demo跟现在的版本一样我是不会提这个问题的

@waitliu
Copy link

waitliu commented Dec 13, 2016

handleDelContacts(e,dataItem){
    let t = this;
    let content = this.state.content;
    console.log(dataItem);
    content.contacts.splice(dataItem.keyIndex,1);
    Toast.show({
        type: 'success',
        content: '删除成功'
    });
    location.hash = "brand";
}

现在为了刷新还要自己添加个location 才可以,根本不会因为数据变化自己刷新ui

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants