Javascript react refetch:;fetch必须是一个函数";
我正在使用React v15.3.2、Redux和v1.0.0-beta.10,我希望在呈现页面之前获取数据。下面是我的代码: 布局组件Javascript react refetch:;fetch必须是一个函数";,javascript,reactjs,react-redux,Javascript,Reactjs,React Redux,我正在使用React v15.3.2、Redux和v1.0.0-beta.10,我希望在呈现页面之前获取数据。下面是我的代码: 布局组件 /* Import libraries */ export default class extends Component { ... render() { return ( <Provider store={ this.store }> { this.renderCo
/* Import libraries */
export default class extends Component {
...
render() {
return (
<Provider store={ this.store }>
{ this.renderComponent() }
// In this case, I would render User component(see code below)
</Provider>
)
}
}
import React from 'react'
import {connect, PromiseState} from 'react-refetch'
import Layout from 'layout'
class User extends Layout {
renderComponent() {
const {userFetch} = this.props;
if (userFetch.pending) {
return <p>Pending</p>
} else if (userFetch.rejected) {
return <p>Rejected</p>
} else if (userFetch.fulfilled) {
return <p>Fulfilled</p>
}
}
}
export default connect(props => ({
userFetch: `https://jsonplaceholder.typicode.com/users`
}))(User)
我不知道这是否是最好的解决方案,但它对我有效
export default connect(props => ({
userFetch: `https://jsonplaceholder.typicode.com/users`
}))(User)
我认为您的代码中有一个错误:不应该是:
export default connect(props) => ({
userFetch: `https://jsonplaceholder.typicode.com/users`
})(User)
看到我怎么移动括号了吗
我认为您的代码中有一个错误:不应该是:
export default connect(props) => ({
userFetch: `https://jsonplaceholder.typicode.com/users`
})(User)
看到我是怎么移动括号的了吗?你在每个浏览器中都会看到这个错误吗?@azium是的,同样的错误…嗯,为了安全起见,我会执行
console.log(fetch)
打印function fetch()
对吗?当我第一次放置console.log(fetch)
时,我得到了function fetch(){native code}
但是当我试图停止et重新运行服务器时,我得到了相同的错误不变冲突:fetch必须是一个函数。相反,我收到了一个未定义的
你在每个浏览器中都会收到这个错误吗?@azium是的,同样的错误…嗯,为了安全起见,执行console.log(fetch)
打印function fetch()
对吗?当我第一次放入console.log(fetch)
时,我得到了function fetch(){native code}
但是当我试图停止et重新运行服务器时,我得到了相同的错误不变冲突:fetch必须是一个函数。相反,收到了一个未定义的
no,这甚至不是正确的语法<代码>连接(…)返回一个函数,使其原始语法有效。不,这甚至不是正确的语法connect(…)
返回一个函数,使其原始语法有效。