函数作为 React 子级无效。如果返回组件而不是从渲染返回组件,则可能会发生这种情况
2022-08-30 05:11:01
我写了一个高阶组件:
import React from 'react';
const NewHOC = (PassedComponent) => {
return class extends React.Component {
render(){
return (
<div>
<PassedComponent {...this.props}/>
</div>
)
}
}
}
export default NewHOC;
我在我的应用程序中使用上述内容.js:
import React from 'react';
import Movie from './movie/Movie';
import MyHOC from './hoc/MyHOC';
import NewHOC from './hoc/NewHOC';
export default class App extends React.Component {
render() {
return (
<div>
Hello From React!!
<NewHOC>
<Movie name="Blade Runner"></Movie>
</NewHOC>
</div>
);
}
}
但是,我得到的警告是:
警告:函数作为 React 子级无效。如果从渲染中返回组件而不是<组件 />,则可能会发生这种情况。或者,也许您打算调用此函数而不是返回它。在 NewHOC(由 App 创建)中,在 app 的 div(由 App 创建)中
Movie.js文件是:
import React from "react";
export default class Movie extends React.Component{
render() {
return <div>
Hello from Movie {this.props.name}
{this.props.children}</div>
}
}
我做错了什么?