就下面这中,点击隐藏内容和显示内容,逻辑非常简单,但是如果使用state的话,它们并不能使用一个状态,所以要分别一个sate,这个太麻烦了,如果使用点击事件添加类的方式,又失去了react的概念,请问这种大家是怎么样实现的呢?
就下面这中,点击隐藏内容和显示内容,逻辑非常简单,但是如果使用state的话,它们并不能使用一个状态,所以要分别一个sate,这个太麻烦了,如果使用点击事件添加类的方式,又失去了react的概念,请问这种大家是怎么样实现的呢?
如果你是在组件内部写state,那么只需要一个简单数据结构:
this.state = {
listStatus: bool
}
因为组件内部的状态是不会共享的,无论你这个组件在同一个页面被调用了多少次,每个组件只维护自己内部的state。
这种需求,肯定得要一个 item 一个状态信息,要不怎么可能做得出来。
只是这个信息,是放在state还是放在什么地方罢了。
如果打开关闭的状态不算“业务数据”的一部分(即你的业务不需要纪录这种状态),那么可以简单的作为传统DOM方式来操作。click的时候检测到有active的class就关闭,反之就打开。
这并没有什么失去react的概念。为了pattern而pattern才是anti-pattern。
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决