判断一个元素是否是由无状态的功能组件创建的
Telling if an element was created from a stateless functional component
我是React Flip Move的所有者,这是一个小库,可以帮助在DOM节点重新排序时动画转换。
它通过使用refs工作;我克隆提供的children
并附加一个ref函数,该函数将授予我对底层节点的访问权,并且我使用该引用根据需要进行命令式动画。
当前的错误消息非常没有帮助,我想提供一个更明确的警告。问题是,我不知道如何判断React元素是否从SFC创建。检查props.children
,它们看起来几乎相同。
我当然可以通过在try/catch中包装第一个调用来找出它,但我希望比这更明确(而且,我不想等到第一次动画尝试才触发自定义错误消息)。
我不知道这是否有帮助,但是你怎么看这个:
class StatefulComponent extends React.Component {...}
console.log(typeof StatefulComponent.prototype.isReactComponent); // logs 'object'
const StatelessComponent = () => {...}
console.log(typeof StatelessComponent.prototype.isReactComponent); // logs 'undefined'
然而,我会尽快尝试React Flip Move。不错的工作!
编辑:所以如果你想知道你的基组件的子组件是否是一个React组件:
// logs 'object' if it's a React Component otherwise logs 'undefined'
console.log(typeof this.props.children.type.prototype.isReactComponent);
相关文章:
- React redux初始化功能,无论状态变化如何
- 美国地图插件,具有状态数据/悬停功能的新按钮
- 具有闭合功能的 For 循环保存状态
- 读取功能(无状态)组件中的<输入>
- 高图表.js添加鼠标悬停功能或悬停状态(实现中断图表?
- 如何从java类的服务层功能再次调用ajaxn以显示页码状态
- 无法加载资源:服务器在绑定功能中以状态 500(内部服务器错误)进行响应
- 使用无状态功能组件与调用方法有什么区别
- 登录状态指示灯功能不起作用
- 即使我按下退格键/删除键,仍保持该功能处于活动状态.以及在加载页面时获取select的值
- 在这个手风琴菜单上实现保存状态功能
- 移动设备上的“调色精灵”禁用了使用相位器改变精灵状态的功能
- 判断一个元素是否是由无状态的功能组件创建的
- React无状态功能组件的流返回类型是什么?
- 不可变状态是ReactJs中的一个功能特性
- 如何要求无状态功能组件(未知模块_createWrapper?)
- 车把/功能最终处于不可能的状态
- React:从功能组件中设置容器中的状态
- 如何将外部方法传递给React中的无状态功能组件
- ReactJS-添加/修改无状态功能组件的propTypes的多种方法