React 의 hook 및 router
                                            
 19042 단어  react.
                    
역할:함수 식 구성 요소 에 state 를 추가 할 수도 있 고,일부 생명주기 갈고리 함 수 를 사용 할 수도 있 습 니 다.
useState useEffect
  import React,{ useState,useEffect } from 'react'
  const Item = ( props ) => {
    return   <li> { props.content } </li>
  }
  function HookComponent () {
    let  [count,setCount ] = useState( 0 )
    let [ list, setList ] = useState( [
      {
        id: 1,
        content: '   1'
      }
    ])
    // console.log( count , setCount )
    useEffect ( () => {
      //        
      document.title = count
    })
    return (
      <div>
        hook
        <button onClick = { () => { setCount( count += 1 ) }}> + </button>
        <p> { count } </p>
        <hr/>
        <button onClick = { () => {
          let newList = list.push({
            id: list.length + 1,
            content: 'Gabriel Yan'
          }) //       
          setList( list.concat(newList))
        }}> list +  </button>
        <ul>
          {
            list.map( item => {
              return <Item { ...item } key = { item.id} />
            })
          }
        </ul>
      </div>
    )
  }
  export default HookComponent
  요약:
  import React, { useState, useEffect } from 'react';
  function Example() {
    const [count, setCount] = useState(0);
    useEffect(() => {
      document.title = `You clicked ${count} times`;
    });
    return (
      <div>
        <p>You clicked {count} times</p>
        <button onClick={() => setCount(count + 1)}>
          Click me
        </button>
      </div>
    );
입 니 다.예 를 들 어 외부 데이터 원본 구독  import React, { useState, useEffect } from 'react';
  function FriendStatus(props) {
    const [isOnline, setIsOnline] = useState(null);
    /* 
      useEffect(() => {
        //1.         
        return 2.         
      }) 
     */
    useEffect(() => {
      function handleStatusChange(status) {
        setIsOnline(status.isOnline);
      }
      ChatAPI.subscribeToFriendStatus(props.friend.id, handleStatusChange);
      // Specify how to clean up after this effect:
      return function cleanup() {
        ChatAPI.unsubscribeFromFriendStatus(props.friend.id, handleStatusChange);
      };
    });
    if (isOnline === null) {
      return 'Loading...';
    }
    return isOnline ? 'Online' : 'Offline';
  }
React router 모드:
패키지 이름 설명 react-router React Router 핵심 api react-router-dom React Router 의 DOM 바 인 딩 은 브 라 우 저 에서 실행 되 며 react-router react-router-native React Native 를 추가 로 설치 하지 않 아 도 됩 니 다.실제 응용 에 서 는 이 를 사용 하지 않 습 니 다.react-router-config 정적 경로 설정
프로 세 스 데모 사용
$ yarn add react-router react-router-dom   import { BrowserRouter as Router} from 'react-router-dom'
   ReactDOM.render(
     <Router>
       <App />
     </Router>
   , document.getElementById('root'));
  const qs = require('querystring')
  let { search } = this.props.location // '?a=1&b=2'
  const { a, b } = qs.parse( search.slice(1) )
  이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
nginx 에서 사이트 아이콘 표시 설정전단 개발 환경: react:^16.4.1 webpack:^4.16.0 웹 팩 에 favicon. ico 설정 추가: nginx 는 ico 에 대한 지원 을 추가 합 니 다:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.