DSC-Sahmyook/Sejul-client

요약 페이지 제작

Closed this issue · 0 comments

요약하기 페이지가 제작되어야 합니다
필요한 기능은 다음과 같습니다

  • 기사 정보 입력
  • 타이머 기능
  • 해시태그 기능
  • 내용 입력하기 기능
  • 등록

기사 정보 입력

기사 제목과 링크는 직접 입력하거나, 컴포넌트에 전달받은 값을 자동입력할 수 있어야 합니다.
링크의 경우는 링크 형태가 맞는지 유효성 검사가 필요하고, 제목의 경우는 3000자를 넘으면 안됩니다.

타이머 기능

타이머 기능은 여러 타이머를 설정한 후, 하나를 선택해서 사용하게 됩니다.
최대 5개 정도의 저장이 가능하도록하고 기록을 지울 수도 있어야합니다.
소요 시간 저장을 위해 실제 소요시간을 저장하는 것이 아닌, 시작일자와 종료일자를 둘 다 가지고 있도록 합니다.

해시태그 기능

해시태그 자체는 자유롭게 추가할 수 있습니다. 따로 검색기능은 제공하지 않습니다.
다만 입력했을 때 자동으로 버튼형식으로 변경되어야 하고, 추가 요청시에는 '#'을 포함하지 않고 텍스트만 ','으로 구분하여 문자열로 제공

내용 입력하기 기능

내용은 3000자보다 작아야 합니다. 내용이 너무 적다면 별도로 요청해주세요

등록

등록은 /api/summaryPOST요청을 보내면 됩니다. 필요한 파라미터는 다음과 같습니다.

// 데이터가 올바른지 확인
        let {
            articleTitle,  // 기사 제목
            articleLink,  // 기사 링크 
            articleOriginalLink, // 기사 오리지널 링크, 없는 경우 링크와 동일
            content, // 내용
            timestampStartDt, // 최종 선택된 타이머 시작 시간
            timestampFinishDt, // 최종 선택된 타이머 종료 시간
            hashtags, // 해시태그들 
        } = req.body;

공통 사항

현재 페이지에서 벗어나려고 하는 경우, 데이터가 소실될 수 있다고 경고가 필요합니다.
window.onBeforeUnload이벤트를 이용해서 경고하도록 합니다.