diff --git a/src/pages/give-vip/index.less b/src/pages/give-vip/index.less index d38210c..ae6af81 100644 --- a/src/pages/give-vip/index.less +++ b/src/pages/give-vip/index.less @@ -1 +1,130 @@ -.give-vip {} +@import '@/styles/variables.less'; +@import '@/styles/common.less'; + +.give-vip { + padding: 40px 24px 200px 24px; + &__hint { + font-size: 28px; + line-height: 48px; + color: @blColorG2; + gap: 12px; + .flex-row(); + justify-content: center; + } + &__icon { + width: 65px; + height: 65px; + } + &__title { + margin-top: 24px; + font-weight: 500; + font-size: 40px; + line-height: 48px; + color: @blColor; + text-align: center; + flex: 0 1 auto; + gap: 12px; + .flex-row(); + justify-content: center; + .highlight { + margin-left: -12px; + display: inline-block; + color: @blHighlightColor; + } + } + &__bg { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; + } + &__info { + &-block { + margin-top: 48px; + } + &-title { + font-weight: 500; + font-size: 32px; + line-height: 32px; + color: #1d2129; + margin-bottom: 24px; + } + &-card { + box-sizing: border-box; + background: #ffffff; + border-radius: 24px; + padding: 32px; + } + &-body { + font-weight: 400; + font-size: 28px; + line-height: 40px; + color: #333333; + margin-bottom: 32px; + } + &-img { + width: 100%; + height: 614px; + } + } + &__footer { + position: fixed; + bottom: 0; + width: 100%; + padding: 12px 32px; + box-shadow: 0px -4px 20px 0px #00000014; + box-sizing: border-box; + background: #ffffff; + } + + &__footer-body { + .flex-row(); + justify-content: center; + } + &__button { + .button(@height: 88px; @fontSize: 32px; @fontWeight: 500; @borderRadius: 44px;); + width: 400px; + } + &__coupon { + &-info { + position: relative; + margin-top: 32px; + padding: 24px; + box-sizing: border-box; + border-radius: 24px; + + .flex-column(); + justify-content: center; + } + + &-title { + font-weight: 500; + font-size: 32px; + line-height: 48px; + color: @blHighlightColor; + margin-bottom: 8px; + } + &-intro { + font-size: 28px; + line-height: 40px; + margin-bottom: 12px; + color: @blColor; + gap: 4px; + .flex-row(); + .highlight { + font-weight: 600; + font-size: 32px; + line-height: 56px; + color: @blHighlightColor; + } + } + &-valid { + font-size: 28px; + line-height: 40px; + + color: @blColorG2; + } + } +} diff --git a/src/pages/give-vip/index.tsx b/src/pages/give-vip/index.tsx index 0febdb8..58f6214 100644 --- a/src/pages/give-vip/index.tsx +++ b/src/pages/give-vip/index.tsx @@ -1,6 +1,11 @@ -import { Button } from '@taroify/core'; +import { Image, Button } from '@tarojs/components'; +import { Fragment, useCallback } from 'react'; + +import SafeBottomPadding from '@/components/safe-bottom-padding'; +import { PageUrl } from '@/constants/app'; import { logWithPrefix } from '@/utils/common'; +import { switchTab } from '@/utils/route'; import './index.less'; @@ -8,5 +13,59 @@ const PREFIX = 'give-vip'; const log = logWithPrefix(PREFIX); export default function GiveVip() { - return
; + const handleNavigate = useCallback(() => { + switchTab(PageUrl.Job); + }, []); + return ( +