[javascript] SweetAlert와 공유하기 기능

이번 글에서는 SweetAlert 라이브러리와 공유하기 기능을 구현하는 방법에 대해 알아보겠습니다.

1. SweetAlert란?

SweetAlert는 JavaScript로 작성된 경고 대화상자 라이브러리입니다. 기존의 기본 경고 대화상자와는 달리, 다양한 스타일과 애니메이션 효과, 사용자 정의 옵션을 제공하여 보다 멋진 경고 대화상자를 만들 수 있습니다.

참고 링크

2. 공유하기 기능 구현하기

2.1. SweetAlert 라이브러리 추가하기

먼저, SweetAlert를 사용하기 위해 해당 라이브러리를 웹 페이지에 추가해야 합니다. 다음과 같이 <script> 태그를 이용하여 SweetAlert 라이브러리를 추가합니다.

<script src="sweetalert.min.js"></script>
<link rel="stylesheet" href="sweetalert.css">

2.2. SweetAlert 경고 대화상자 생성하기

공유하기 기능을 구현하기 위해 SweetAlert 경고 대화상자를 생성합니다. 다음은 간단한 예제 코드입니다.

Swal.fire({
   title: "공유하기",
   text: "페이지를 공유하시겠습니까?",
   icon: "question",
   showCancelButton: true,
   confirmButtonText: "공유하기",
   cancelButtonText: "취소",
   reverseButtons: true
}).then((result) => {
   if (result.value) {
      // 공유하기 기능을 수행하는 코드를 작성합니다.
   }
});

위 예제 코드에서 title은 경고 대화상자의 제목, text는 내용, icon은 아이콘 스타일을 지정합니다. showCancelButtontrue로 설정하면 취소 버튼이 표시되고, confirmButtonTextcancelButtonText를 사용하여 버튼의 텍스트를 설정할 수 있습니다. reverseButtonstrue로 설정되면 취소 버튼이 오른쪽에 표시됩니다.

2.3. 공유하기 기능 구현하기

앞서 생성한 SweetAlert 경고 대화상자에서 “공유하기” 버튼을 클릭한 경우, 해당 기능을 수행할 수 있도록 코드를 작성합니다. 예를 들어, 페이지 URL을 소셜 미디어로 공유하는 기능을 구현하고 싶다면, 다음과 같은 코드를 작성할 수 있습니다.

Swal.fire({
   // SweetAlert 경고 대화상자 설정 생략
}).then((result) => {
   if (result.value) {
      const pageUrl = window.location.href;
      window.open(`https://social-media.com/share?url=${encodeURIComponent(pageUrl)}`);
   }
});

위 코드에서는 window.location.href를 사용하여 현재 페이지의 URL을 가져오고, encodeURIComponent를 사용하여 URL을 인코딩합니다. 그리고 소셜 미디어의 공유하기 링크를 사용하여 새 창을 엽니다. 이렇게 함으로써 공유하기 기능이 구현됩니다.

3. 마무리

이렇게 SweetAlert와 공유하기 기능을 구현하는 방법에 대해 알아보았습니다. SweetAlert를 사용하면 기본 경고 대화상자보다 다양한 옵션과 스타일을 활용하여 보다 멋진 경고 대화상자를 만들 수 있습니다. 공유하기 기능 또한 SweetAlert와 함께 사용하면 사용자에게 더 편리한 기능을 제공할 수 있습니다.

참고로 위 예제 코드는 실제 동작을 보장하기 위한 것이 아니며, 실제 프로젝트에서는 해당 기능을 구현하기 위한 추가적인 로직과 처리가 필요할 수 있습니다.