我正在尝试为我的React应用创建模态窗口,并且我正在关注this教程。
然而,我收到以下错误
Warning: React.createElement: type should not be null, undefined, boolean, or number. It should be a string (for DOM elements) or a ReactClass (for composite components). Check the render method of `Modal`.
这是我的代码
import React from 'react'
import {ReactCSSTransitionGroup} from 'react-addons-css-transition-group'
const Modal = React.createClass ({
render() {
if (this.props.isOpen) {
return (
<ReactCSSTransitionGroup transitionName={this.props.transitionName}>
<div className="modal">
{this.props.children}
</div>
</ReactCSSTransitionGroup>
)
}
else {
return (
<ReactCSSTransitionGroup transitionName={this.props.transitionName} />
)
}
}
})
module.exports = Modal
我按npm install --save react-addons-css-transition-group
问题显然ReactCSSTransitionGroup没有正确导入,因为用普通div替换它不会抛出任何错误。
答案 0 :(得分:0)
您必须从{ReactCSSTransitionGroup}
import {ReactCSSTransitionGroup} from 'react-addons-css-transition-group'
应该是
import ReactCSSTransitionGroup from 'react-addons-css-transition-group'
此外,您应该为ReactCSSTransitionGroup
<ReactCSSTransitionGroup transitionName={this.props.transitionName}>
<div className="modal" key="transitionGroup">
{this.props.children}
</div>
</ReactCSSTransitionGroup>