-
[Next.js][PayPal] 페이팔 버튼(subscription) 연결 + 태그라인 없애기웹 개발/Nextjs 14 2024. 5. 8. 04:42
현재 구현하고 있는 웹의 결제 기능을, 페이팔을 사용해서 구현하기로 했다.
Nextjs 프로젝트에 페이팔 버튼을 넣는 건 react-paypal-js 패키지를 사용하면 쉽게 구현할 수 있다.
그런데 버튼을 추가하고 보니 버튼 아래에 계속 제공: PayPal 이 거슬리게 떠있었다. 디자인을 위해서 해당 태그는 없애야 했다.
개발자 도구로 살펴보니 해당 글자는 paypal-button-tagline라는 클래스에 속해있어, css로 해당 클래스를 안 보이게 처리하려 했다.
그런데 좀 더 찾아보니까 관련된 버튼 속성이 있어서 쉽게 태그 라인을 없앨 수 있었다.
결론: PayPal button의 style에 tagline 속성을 추가하면 된다.
style: { tagline: false }
더욱 자세한 내용은 관련 react-paypal-js 문서 참고
아래는 혹시 도움이 될까 싶어 첨부하는 코드입니당
import {CreateSubscriptionActions, OnApproveActions, OnApproveData, OnCancelledActions} from '@paypal/paypal-js'; export default function PaymentPayPalButton() { async function onApprove(data: OnApproveData, actions: OnApproveActions): Promise<void> { if (data.subscriptionID) { // ... } } async function onCancel(data: Record<string, unknown>, actions: OnCancelledActions) { // alert cancel message... } async function onError(err: Record<string, unknown>) { // alert error... } async function createSubscription(data: Record<string, unknown>, actions: CreateSubscriptionActions) { return actions.subscription.create({ plan_id: process.env.NEXT_PUBLIC_PAYPAL_SUBSCRIBE ?? '' }); } return ( <> <PayPalScriptProvider options={{ clientId: process.env.NEXT_PUBLIC_PAYPAL_CLIENT_ID ?? '', components: 'buttons', intent: 'subscription', vault: true, }}> <PayPalButtons style={{ layout: 'horizontal', shape: 'rect', color: 'white', label: 'paypal', tagline: false }} onApprove={onApprove} onCancel={onCancel} onError={onError} createSubscription={createSubscription} /> </PayPalScriptProvider> </> ) }
끗~
'웹 개발 > Nextjs 14' 카테고리의 다른 글
[Next.js 14] .env 파일 생성 및 환경변수 설정 [AWS Amplify] (0) 2024.05.08 [Next.js 14] 사용자 데이터 csv로 변환 및 파일로 다운로드 (0) 2024.05.08 [Next.js 14] Custom 404 페이지 만들기 (1) 2024.03.24 [Next.js 14] Google SpreadSheets를 이용한 다국어 지원 서비스 자동화 및 발생한 오류 해결 방법 정리 [i18next][Javascript] (0) 2024.03.20 [Next.js 14][next-video] 메인 화면에 배경 영상(background video) 넣기 (0) 2024.03.13