import React from 'react';
const NewHOC = (PassedComponent) => {
return class extends React.Component {
render(){
return (
<div>
<PassedComponent {...this.props}/>
</div>
)
}
}
}
export default NewHOC;
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>
);
}
}
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>
}
}
我做错了什么?
您将它用作常规组件,但它实际上是一个返回组件的函数。
尝试这样做:
const NewComponent = NewHOC(Movie)
你会这样使用它:
<NewComponent someProp="someValue" />
const NewHOC = (PassedComponent) => {
return class extends React.Component {
render() {
return (
<div>
<PassedComponent {...this.props} />
</div>
)
}
}
}
const Movie = ({name}) => <div>{name}</div>
const NewComponent = NewHOC(Movie);
function App() {
return (
<div>
<NewComponent name="Kill Bill" />
</div>
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="root"/>
[更新]在有人将其标记为重复之前,我发现答案有点模糊和简短 函数作为React子函数无效。如果返回组件而不是从渲染返回组件,则可能会发生这种情况 我有一个这样的反应组件 这是我的模态成分可能会导致问题 我在控制台中看到以下错误 函数作为React子函数无效。如果返回组件而不是从渲染返回组件,则可能会发生这种情况 [问题]有人能解释一下是什么导致了这个错误,因为有人投票并写了一条评论说负责的代码不在
我是新手,我正在使用非官方的哈利波特api构建一个应用程序。 这是应用程序: 当我登录控制台时,来自API的JSON响应成功显示,但是我在渲染输出时遇到了问题。我正在使用Bulma进行前端样式。 这在我的app.js中 这是错误消息: 后端。js:6警告:函数作为React子函数无效。如果返回组件而不是从渲染返回组件,则可能会发生这种情况。或者你想调用这个函数而不是返回它。在p中(由HouseHi
我正在使用react redux,我使用无状态组件 错误 这是我的index.js 我的app.js 存储在另一个index.js文件里在一个叫Redux的文件夹里 我尝试过NewHOC,但我无法摆脱错误
假设我有一个需要函数的组件,它应该返回一些基于我在< code>filterTypesArray中接收的生成的“DOM”结构。然后我想在我的类的返回函数中使用< code>{generateInputs}来呈现它。它给了我一个警告。为了避免这种情况,我必须在< code>render函数中将这种类型的逻辑实现为某个< code>const。我是新反应,我不知道为什么会这样。我没有从那条警告信息中看
问题内容: 我写了一个高阶组件: 我在我的App.js中使用以上内容: 但是,我得到的警告是: 警告:函数作为React子代无效。如果您从渲染返回一个Component而不是 ,则可能会发生这种情况。或者,也许您打算调用此函数而不是返回它。在应用程序的div(由应用程序创建)中的NewHOC(由应用程序创建)中 Movie.js文件为: 我究竟做错了什么? 问题答案: 您将其用作常规组件,但实际上
我得到了这个错误函数是无效的反应子。如果您返回一个组件而不是从render返回,可能会发生这种情况。或者你想调用这个函数而不是返回它 和 位置“/”处的匹配叶路由没有元素。这意味着默认情况下,它将呈现一个具有空值的,从而产生一个“空”页。 这一个 应用程序。js文件是 和Homepage.js