react(API)

오미희·2021년 7월 13일
0

react

목록 보기
1/15

리엑트로 API를 이용해보기

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script crossorigin src="https://unpkg.com/react@17/umd/react.development.js"></script>
    <script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.development.js"></script>
    <script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
</head>
<body>
    <div id="root"></div>
    <script type="text/babel">
    class App extends React.Component{
        state = {
            dog:''
        }
        componentDidMount(){
            this.refresh()
        }

        refresh = async () => {
            const response = await fetch('https://dog.ceo/api/breeds/image/random')
            // 강아지 사진을 랜덤으로 받을 수 있는 api
            // => api를 이용하지 않고  DB를 연결해서 해당 DB에 있는 내용을 가져오는 식으로도 할 수 있다.
            const data = await response.json()
            // response로 받은 내용을 json()형태로 바꾸어  data에 담음
            this.setState({dog:data})
            // dog의 state.dog를 data로 바꿈
        }
        render(){
            return(
                <div>
                    {console.log(this.state.dog.message)}
                    {this.state.dog?<img src={this.state.dog.message}/>:'loadding'}
                    <button onClick={this.refresh}>
                        새로고침
                    </button>
                </div>
            )
        }
    }
    ReactDOM.render(
        <App/>,
        document.querySelector('#root')
    )
    
    </script>
    
</body>
</html>
profile
안녕하세요

0개의 댓글