Javascript 我的Udacity MyReads React项目道具有问题
谁能帮我修一下这个密码吗。 我为该项目创建了两个名为Javascript 我的Udacity MyReads React项目道具有问题,javascript,reactjs,Javascript,Reactjs,谁能帮我修一下这个密码吗。 我为该项目创建了两个名为app.js和searchbooks.js的文件。但我收到了这两篇评论 下面是app.js的 import React from 'react' // import * as BooksAPI from './BooksAPI' import './App.css'; import * as BooksAPI from './BooksAPI'; // import Header from './components/Header'; imp
app.js
和searchbooks.js
的文件。但我收到了这两篇评论
下面是app.js的
import React from 'react'
// import * as BooksAPI from './BooksAPI'
import './App.css';
import * as BooksAPI from './BooksAPI';
// import Header from './components/Header';
import BookShelf from './Components/BookShelf';
import SearchBooks from './Components/SearchBooks';
import {Route} from 'react-router-dom';
class BooksApp extends React.Component {
state = {
books:[]
}
componentDidMount(){
BooksAPI.getAll().then(data=>{
this.setState({
books:data
})
})
}
bookShelfHandler =(book,shelf)=>{
BooksAPI.update(book,shelf)
BooksAPI.getAll().then(data=>{
this.setState({
books:data
})
})
}
render() {
return (
<div className="app">
{/* <Route exact path="/" render={()=>(
<Header/>
)}/> */}
<Route exact path="/" render={()=>(
<BookShelf books={this.state.books} bookShelfHandler = {this.bookShelfHandler}/>
)}/>
<Route path="/search" render={()=>(
<SearchBooks bookShelfHandler= {this.bookShelfHandler}
books={this.state.books}
/>
)}/>
</div>
)
}
}
export default BooksApp
我试图修复代码,但仍有一些地方卡住了。请帮助我修复错误,该项目是在反应,必须在8小时内提交
查看上图以了解有关错误的更多信息。根据评论和代码
在您的app.js
文件中,您正在传递道具
<SearchBooks bookShelfHandler= {this.bookShelfHandler}
books={this.state.books}
/>
只是你把错误的道具名称传给了组件,
要解决此问题,只需将app.js文件中的名称更改为
<SearchBooks onBookUpdate= {this.bookShelfHandler}
myBooks={this.state.books}
/>
按照您的建议进行了更改。让我们看看他们现在在评论什么。谢谢你的帮助。当然,如果还有什么改变,请告诉我:)请看这个问题这个问题与当前问题不同,也不相关。如果有帮助,你可以先将其他问题标记为完成吗?事实上,我做了你建议的更改,新的评论来了。这就是我再次问这个问题的原因。那里需要你的帮助。是的,我会标记我是新来的这就是为什么我还在学习这个平台。
myBooks: PropTypes.array.isRequired,
onBookUpdate: PropTypes.func.isRequired
<SearchBooks onBookUpdate= {this.bookShelfHandler}
myBooks={this.state.books}
/>