【发布时间】:2022-01-15 06:02:02
【问题描述】:
安装 react-router-dom 版本 6 后,我尝试运行 npm start,但我在控制台中得到一个没有错误的空白页面。第一个代码下面是我要显示的屏幕的代码。请有人帮助我,告诉我我在这里做错了什么。
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import reportWebVitals from './reportWebVitals';
import MovieList from './component/movieList';
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
ReactDOM.render(
<React.StrictMode>
<Router>
<Routes>
<Route exact path = "/welcome" element = {MovieList}/>
</Routes>
</Router>
</React.StrictMode>,
document.getElementById('root')
);
reportWebVitals();
import { useState } from "react";
function MovieList() {
const [searchTerm, setSearchTerm] = useState("")
const [movies, setMovie] = useState([])
const handleMovieSearchChange = (e) => {
setSearchTerm(e.target.value);
};
const fetchMovie = (movieName) => {
const searchUrl = `https://www.omdbapi.com/?s=${movieName}&page=2&apikey=2c2c85ae`;
fetch(searchUrl)
.then((response) => response.json())
.then((result) => {
setMovie(result.Search);
});
};
const movieItems = movies.map((movie, index) => {
return (
<div key={index}>
<img src={movie.Poster} alt="" />
<h3>{movie.Title}</h3>
</div>
)
})
return (
<div>
<h1>Movie List Page</h1>Search
<input type={"text"} onChange={handleMovieSearchChange} />
<button onClick={() => fetchMovie(searchTerm)}>Search</button>
{movieItems}
</div>
);
}
export default MovieList;
【问题讨论】:
-
您要在浏览器中点击哪个页面?
-
电影列表页面
-
我为要在浏览器上显示的页面添加了代码
-
您在浏览器中打开的网址是什么?
-
MovieList组件渲染在/movie路径,您是否尝试检查该组件是否在/movie渲染?
标签: javascript reactjs create-react-app