在 react 中创建超过 3 级嵌套组件是一种不好的做法吗?如果是,还有哪些其他方法可以在不稀释组件责任的情况下创建复杂的 UI?
不,但如果他们有很多道具相互传递,那就是。
解决方案是:
嗖!或 React Context API
创建一个全局状态容器。 因此组件可以彼此分离
https://redux.js.org/
嵌套组件的级别不再重要,就像嵌套HTML元素的级别重要一样。
另一方面,如果您要传递超过3-4层深度的道具,则不建议这样做。React 的 Context API 就是为了解决这个问题而创建的。它可以帮助您设置提供者/消费者对,可以在任何级别注入道具。这是 React 文档的一个很好的例子:
https://reactjs.org/docs/context.html#dynamic-context