我创建了一个UI组件,我将其打包到自己的模块中。我在其他组件的render函数中实现它。除了在IE9中,这非常有效。在IE9中,我收到以下错误:
SCRIPT5022: MyCustomComponent.render(): A valid ReactComponent must be returned. You may have returned undefined, an array or some other invalid object.
app.029dee66a8362f45fef1.js?029dee66a8362f45fef1, line 11504 character 2
有人遇到过这个问题吗?我已经尝试记录MyCustomerComponent,它是Chrome和IE9中的预期对象
console.log(typeof(MyCustomComponent));
console.log(MyCustomComponent);
两个浏览器列表:
LOG: function
LOG: function MyCustomComponent(props) {
_classCallCheck(this, MyCustomComponent);
return _possibleConstructorReturn(this, Object.getPrototypeOf(MyCustomComponent).call(this, props));
}
以下是我的混淆组件的样子:
export default class MyCustomComponent extends React.Component {
constructor(props) {
super(props);
}
render() {
return (
<div className={"my-class another-class"}>
<span className="my-class2"></span>
<span className="my-class2"></span>
<span className="my-class2"></span>
</div>
);
}
}
答案 0 :(得分:0)
事实证明问题是应用程序是用babel-5构建的,而组件是用babel-6构建的。升级使用babel-6构建的应用程序解决了这个问题。