Reactjs 反应:TypeError:existingChildren.set不是函数
我试图在axios的success函数中调用setState,出现以下错误:Reactjs 反应:TypeError:existingChildren.set不是函数,reactjs,react-router,react-router-v4,react-router-dom,Reactjs,React Router,React Router V4,React Router Dom,我试图在axios的success函数中调用setState,出现以下错误: Uncaught TypeError: existingChildren.set is not a function at mapRemainingChildren (react-dom.development.js:6824) at reconcileChildrenArray (react-dom.development.js:7320) at reconcileChildFibers (r
Uncaught TypeError: existingChildren.set is not a function
at mapRemainingChildren (react-dom.development.js:6824)
at reconcileChildrenArray (react-dom.development.js:7320)
at reconcileChildFibers (react-dom.development.js:7672)
at reconcileChildrenAtExpirationTime (react-dom.development.js:7788)
at reconcileChildren (react-dom.development.js:7771)
at updateHostComponent (react-dom.development.js:8024)
at beginWork (react-dom.development.js:8257)
at performUnitOfWork (react-dom.development.js:10244)
at workLoop (react-dom.development.js:10308)
at HTMLUnknownElement.callCallback (react-dom.development.js:540)
at Object.invokeGuardedCallbackDev (react-dom.development.js:579)
at invokeGuardedCallback (react-dom.development.js:436)
at renderRoot (react-dom.development.js:10386)
at performWorkOnRoot (react-dom.development.js:11000)
at performWork (react-dom.development.js:10952)
at requestWork (react-dom.development.js:10861)
at scheduleWorkImpl (react-dom.development.js:10744)
at scheduleWork (react-dom.development.js:10706)
at Object.enqueueSetState (react-dom.development.js:6204)
at App../node_modules/react/cjs/react.development.js.Component.setState
(react.development.js:226)
at App.js:86
at <anonymous>
我假设这与我呈现组件的方式有关,而这是导致问题的原因
render() {
return (
<div className="app">
<Header />
<BreadCrumb
data={this.state.breadCrumb}
setCountryView={this.setCountryView.bind(this)}
/>
<Switch>
<Route
exact
path="/"
component={() =>
<Home
setMapView={this.setMapView.bind(this)}
mapData={this.state.mapData}
/>}
/>
<Route path="/country/:country" component={Country} />
</Switch>
</div>
);
render(){
返回(
}
/>
);
非常感谢您的建议。将
then(函数(响应){
更改为then(响应){
我仍然会得到相同的错误..箭头函数只是一个语法糖,对吧?没有箭头函数会改变这个
得到边界的方式也很抱歉,刚刚注意到您的绑定(这个)
更改(函数(response){
到然后(response=>{
仍然我得到了相同的错误..箭头函数只是一个语法糖,对吗?没有箭头函数改变这个
得到边界的方式也很抱歉,只是注意到了你的.bind(this)
render() {
return (
<div className="app">
<Header />
<BreadCrumb
data={this.state.breadCrumb}
setCountryView={this.setCountryView.bind(this)}
/>
<Switch>
<Route
exact
path="/"
component={() =>
<Home
setMapView={this.setMapView.bind(this)}
mapData={this.state.mapData}
/>}
/>
<Route path="/country/:country" component={Country} />
</Switch>
</div>
);