로딩 스피너
2021. 4. 14. 10:12ㆍ개발공부/리액트 기초
[Spinner.js]

[bucket.js]


[App.js]

render안의 내용이 로드가 되었을때만 나오고 아니면 스피너가 나오게한다.
import Spinner from "./Spinner";
render() {
return (
<div className="App">
<Container>
<Title>내 버킷리스트</Title>
{!this.props.is_loaded? (<Spinner/>) :(
<React.Fragment>
<Progress/>
<Line />
{/* 컴포넌트를 넣어줍니다. */}
{/* <컴포넌트 명 [props 명]={넘겨줄 것(리스트, 문자열, 숫자, ...)}/> */}
{/* Route 쓰는 법 2가지를 모두 써봅시다! */}
<Switch>
<Route
path="/"
exact
render={(props) => (
<BucketList
bucket_list={this.props.bucket_list}
history={this.props.history}/>)}
/>
<Route path="/detail/:index" component={Detail}/>
{/* <Route component={NotFound}/> */}
{/* 뒤로가기 기능까지 추가해보기 */}
<Route render={() => (<NotFound history = {this.props.history}/>)}/>
</Switch>
{/* 인풋박스와 추가하기 버튼을 넣어줬어요. */}
<Input>
<input type="text" ref={this.text} />
<button onClick={this.addBucketList}>추가하기</button>
</Input>
<button onClick={() =>{
window.scrollTo({top:0, left:0, behavior: "smooth"});
}}>위로가기</button>
</React.Fragment>
)}
</Container>
</div>
);
}
}
'개발공부 > 리액트 기초' 카테고리의 다른 글
[state] useState를 사용하여 state업데이트 시키기 (0) | 2021.04.16 |
---|---|
component 만들기 (0) | 2021.04.16 |
Material UI (0) | 2021.04.14 |
리덕스에서 파이어스토어 적용하기 (0) | 2021.04.14 |
미들웨어 사용해서 리덕스에 데이터 넣기 (0) | 2021.04.13 |