现在已经挣扎了几个小时了。我正在尝试使用react-css-transition-group
为数组中的元素设置动画。我有:
render: function(){
var dataSections = this.props.sections.map(this.buildDataSection);
return (
<div>
<ReactCSSTransitionGroup transitionName="example" transitionEnterTimeout={500} transitionLeaveTimeout={300}>
{dataSections}
</ReactCSSTransitionGroup>
</div>
);
}
它编译得很好,但是当我运行它时,我在控制台中得到Uncaught Error: Invariant Violation: ReactCSSTransitionGroup.render(): A valid ReactComponent must be returned.
。我不知道为什么。我试过回滚我的版本反应和反应-css-transition-group无济于事。我现在对这些想法感到茫然。
dataSections
是一个有效的元素数组,当我取出动画时渲染效果很好。
有什么想法吗?
我已经转移到这个项目中的其他几个东西,我已经意识到它不仅仅是这个包,它是导出组件的任何反应包。所有人都抛出同样的错误:A valid ReactComponent must be returned. You may have returned undefined, an array or some other invalid object.
我已经更新了包括Browserify在内的所有软件包,而React已经是对等依赖项。不知道该怎么做:(
答案 0 :(得分:1)
好的,我已经弄明白了,我是个傻瓜。
在我开始使用NPM之前,我使用的是react-rails
宝石,当我将所有内容移植到Browserify时,我从未拿出旧宝石。因此,我没有注意到我忘记在组件文件顶部需要的几个不同的地方(因为旧的宝石提供了React
全局命名空间,因此没有抛出错误。
长话短说,我有两个冲突版本的React同时运行。删除了宝石,修复了丢失的包含物,问题就消失了!