为了账号安全,请及时绑定邮箱和手机立即绑定

添加删除按钮以及清空某条评论的实现

1、添加删除按钮

    在CommentList里面,comments遍历的时候,返回一个li和一个button,button添加点击事件,点击的时候传入index参数,调用this.props.onDeleteComment方法,删除对应的评论

https://img1.sycdn.imooc.com//5c08e0430001a79d07300534.jpg

app.js里面,注意绑定this.deletecomment

https://img1.sycdn.imooc.com//5c08e05f0001c88e06750093.jpg

https://img1.sycdn.imooc.com//5c08e05f0001a9c003020076.jpg

2、清空评论

在CommentBox中,onSubmit方法里面直接清空,一旦提交就可以清空了

https://img1.sycdn.imooc.com//5c08e0bd0001a30904010099.jpg


以上代码目前自己运行正常,如有可改进之处,请老师同学指正

https://img1.sycdn.imooc.com//5c08e14f0001eb8f07980441.jpg

正在回答

5 回答

为啥我的button和li不在同一行?

0 回复 有任何疑惑可以回复我~

为什么我这样会报错https://img1.sycdn.imooc.com//5c1ca0ec0001e12f05480138.jpg

我的代码是

CommentList:

https://img1.sycdn.imooc.com//5c1ca11a000124a010030468.jpg

app.js

https://img1.sycdn.imooc.com//5c1ca13d000168b308960504.jpg


0 回复 有任何疑惑可以回复我~

恩,两个都很好,filter写起来更方便;但是如果我们现在有一万条评论,而只是删除其中一条,那么这时候可能splice更好吧,因为不用把整个数组遍历一遍,毕竟每次只点击一个删除按钮。 都是我个人见解哈 :D 

0 回复 有任何疑惑可以回复我~

你好,第一点我试了,有bug,直接不显示任何评论内容;第二点我绑定了的,只是没贴出来~~;第三点,我也试了下,代码如下,但是也有bug,点击一个删除,会删除多条评论,不知道你运行的时候有没有出现呢

comments:this.state.comments.splice(deleteIndex,1)


0 回复 有任何疑惑可以回复我~
#1

库米花

试一下 const comments = [...this.state.comments]; comments.splice(index, 1); this.setState({comments}); 因为splice方法返回的是被删除的元素
2018-12-06 回复 有任何疑惑可以回复我~
#2

秋夜月moon 提问者 回复 库米花

嗯,这个是可以的,从语义上来说更好一点
2018-12-07 回复 有任何疑惑可以回复我~
#3

张轩 回复 秋夜月moon 提问者

直接使用 数组上面的 filter 方法岂不是更妙? 语义上更清楚 就是 要 过滤掉不要的条目
2018-12-07 回复 有任何疑惑可以回复我~
#4

秋夜月moon 提问者 回复 张轩

恩,两个都很好,filter写起来更方便;但是如果我们现在有一万条评论,而只是删除其中一条,那么这时候可能splice更好吧,因为不用把整个数组遍历一遍,毕竟每次只点击一个删除按钮。 都是我个人见解哈 :D
2018-12-07 回复 有任何疑惑可以回复我~
查看1条回复

可以直接写onClick={this.props.onDeleteComment(index)}

constructor方法里面最好对this.props.onDeleteComment方法绑定this

删除数组操作在已有index时可以使用splice方法

1 回复 有任何疑惑可以回复我~
#1

秋夜月moon 提问者

你好,第一点我试了,有bug,直接不显示任何评论内容;第二点我绑定了的,只是没贴出来~~;第三点,我也试了下,代码如下,但是也有bug,点击一个删除,会删除多条评论,不知道你运行的时候有没有出现呢 comments:this.state.comments.splice(deleteIndex,1)
2018-12-06 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

添加删除按钮以及清空某条评论的实现

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号