Frontend Mentor - URL 단축 API 랜딩 페이지

이것은 Frontend Mentor URL shortening API landing page에 대한 나의 해결책입니다.


목차



  • Overview
  • The challenge
  • Links


  • My process
  • Built with
  • What I learned

  • Author

  • 개요



    과제는 shrtcode API과 통합하여 단축 URL을 만들고 디자인과 같이 표시하는 것입니다.

    도전



    사용자는 다음을 수행할 수 있어야 합니다.
  • 장치의 화면 크기에 따라 사이트에 대한 최적의 레이아웃 보기
  • 유효한 URL 단축
  • 브라우저를 새로 고친 후에도 단축 링크 목록이 표시됨
  • 클릭 한 번으로 단축 링크를 클립보드에 복사합니다
  • .
  • 다음과 같은 경우 form가 제출되면 오류 메시지가 표시됩니다.
  • input 필드가 비어 있습니다
  • .


    연결


  • Solution
  • Live Preview

  • 내 프로세스



    내장:


  • HTML5
  • SCSS
  • 부트스트랩
  • React
  • shrtcode API

  • 내가 배운 것


  • localStorage에 빈 어레이 생성

  • localStorage.setItem('data', '[]');
    


  • 가져온 데이터를 배열에 넣습니다localStorage.

  • let param = this.state.value;
    
    fetch(`https://api.shrtco.de/v2/shorten?url=${param}`)
      .then((res) => res.json())
      .then((result) => {
        // if localStorage 'data' is null make an empty array
        if (localStorage.getItem("data") == null) {
          localStorage.setItem("data", "[]");
        }
    
        // get localStorage 'data' as var old_data
        var old_data = JSON.parse(localStorage.getItem("data"));
    
        // if fetch is ok return localStorage 'data' push result
        if (result.ok === true) {
          old_data.push(result);
        }
    
        // set localStorage 'data' to new data from push result
        localStorage.setItem("data", JSON.stringify(old_data));
    
        // set state items equal to result, linkStorage to localStorage 'data'
        this.setState({
          items: result,
          linkStorage: JSON.parse(localStorage.getItem("data"))
        });
      })
      .catch((error) => console.log("error", error));
    



    작가


  • 프런트엔드 멘토: @NabillaTrisnani
  • Github: @NabillaTrisnani
  • LinkendIn:
  • 트위터:
  • 좋은 웹페이지 즐겨찾기