【发布时间】:2016-06-10 22:09:53
【问题描述】:
虽然在 react docs 中经常提到术语支持实例,但我无法理解它的含义。来自反应文档:
要与浏览器交互,您需要一个对 DOM 节点的引用。 您可以将 ref 附加到任何元素,这允许您引用 组件的支持实例。如果您需要,这很有用 在组件上调用命令式函数,或者想要访问 底层 DOM 节点。 link
这个简化的组件 API 适用于纯组件 他们道具的功能。这些组件不得保留内部 状态,没有支持实例,也没有组件 生命周期方法。 link
因为无状态函数没有支持实例,所以你不能 将 ref 附加到无状态函数组件。通常这不是一个 问题,因为无状态函数不提供命令式 API。 如果没有命令式 API,您将无能为力 反正实例。但是,如果用户想要找到一个 DOM 节点 无状态功能组件,它们必须将组件包装在一个 有状态组件(例如 ES6 类组件)并将 ref 附加到 有状态的包装组件。
【问题讨论】:
标签: javascript reactjs