refactor: remove font-size utility file and replace with inline text classes
Delete the src/static/scss/font-size.scss utility file, and replace all legacy `font-size-*` class usages across the codebase with inline `text-[numberpx]` styling to consolidate font size definitions and remove redundant utility code.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
<!-- 外层行容器:接收来自父组件的对齐类(如 flex flex-justify-end) -->
|
||||
<view class="chat-mine-row">
|
||||
<view class="chat-mine bg-[#17294e]">
|
||||
<text class="font-size-15 text-white">{{ text }}</text>
|
||||
<text class="text-[15px] text-white">{{ text }}</text>
|
||||
<slot></slot>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<view class="w-full flex flex-col overflow-hidden pl-[12px] mt-[6px] mb-[6px]">
|
||||
<text class="font-size-14 text-[#333333]">{{ text }}</text>
|
||||
<text class="text-[14px] text-[#333333]">{{ text }}</text>
|
||||
<slot></slot>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
:options="appSpeechOptions" @result="handleAppSpeechResult" @change="handleAppSpeechChange" />
|
||||
<!-- #endif -->
|
||||
|
||||
<view class="text-[#99a0ae] font-size-9 text-center text-gray-400">
|
||||
<view class="text-[#99a0ae] text-[9px] text-center text-gray-400">
|
||||
内容由AI大模型生成,请仔细鉴别
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<view class="more-tips bg-white border-box">
|
||||
<view class="font-size-0 whitespace-nowrap scroll-x">
|
||||
<view class="text-[0px] whitespace-nowrap scroll-x">
|
||||
<view class="more-tips-item inline-block mr-[8px]" v-for="(item, index) in guideWords" :key="index">
|
||||
<text :class="['font-[500] font-size-12 text-center', `color-${index}`]" @click="sendReply(item)">
|
||||
<text :class="['font-[500] text-[12px] text-center', `color-${index}`]" @click="sendReply(item)">
|
||||
{{ item }}
|
||||
</text>
|
||||
</view>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
@click="sendReply(item)">
|
||||
<view class="flex items-center justify-center">
|
||||
<image v-if="item.icon" class="icon" :src="item.icon" />
|
||||
<text class="font-size-14 text-[#0CCD58] leading-[20px]">
|
||||
<text class="text-[14px] text-[#0CCD58] leading-[20px]">
|
||||
{{ item.title }}
|
||||
</text>
|
||||
</view>
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
:totalFrames="spriteStyle.totalFrames" :columns="spriteStyle.columns" :displayWidth="spriteStyle.displayWidth"
|
||||
:fps="16" />
|
||||
<text v-show="show" :class="[
|
||||
'font-size-14 font-[500] text-[#171717] ml-[10px]',
|
||||
'text-[14px] font-[500] text-[#171717] ml-[10px]',
|
||||
{ 'text-animated': show },
|
||||
]">
|
||||
{{ config.name }}
|
||||
|
||||
@@ -6,7 +6,7 @@ v
|
||||
<SpriteAnimator :src="spriteStyle.ipLargeImage" :frameWidth="spriteStyle.frameWidth"
|
||||
:frameHeight="spriteStyle.frameHeight" :totalFrames="spriteStyle.totalFrames" :columns="spriteStyle.columns"
|
||||
:displayWidth="spriteStyle.displayWidth" :fps="16" />
|
||||
<view class="welcome-text font-size-14 font-[500] font-family-misans-vf text-[#171717] leading-[24px]">
|
||||
<view class="welcome-text text-[14px] font-[500] font-family-misans-vf text-[#171717] leading-[24px]">
|
||||
{{ welcomeContent }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -11,14 +11,14 @@
|
||||
<image v-if="coverImage" class="w-full h-auto block" :src="coverImage" mode="widthFix" />
|
||||
|
||||
<view class="pt-[16px] px-[12px] pb-[24px] border-box">
|
||||
<view class="text-[#171717] font-size-16 font-weight-600">{{ detailTitle }}</view>
|
||||
<view class="text-[#171717] text-[16px] font-weight-600">{{ detailTitle }}</view>
|
||||
|
||||
<view v-if="publishTime" class="notice-time-tag flex flex-row flex-items-center mt-[16px]">
|
||||
<uni-icons type="clock" size="18" color="#5A6780" />
|
||||
<text class="text-[#171717] font-size-12 font-weight-600 ml-[8px]">发布时间:{{ publishTime }}</text>
|
||||
<text class="text-[#171717] text-[12px] font-weight-600 ml-[8px]">发布时间:{{ publishTime }}</text>
|
||||
</view>
|
||||
|
||||
<view class="mt-[20px] pt-[16px] text-[#666666] font-size-14 leading-[20px] border-top">{{ noticeContent }}
|
||||
<view class="mt-[20px] pt-[16px] text-[#666666] text-[14px] leading-[20px] border-top">{{ noticeContent }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -4,14 +4,14 @@
|
||||
:duration="duration" :indicator-dots="false" :vertical="true">
|
||||
<swiper-item v-for="item in bannerList" :key="item.entityName">
|
||||
<view class="swiper-item" @click="clickItem(item)">
|
||||
<text class="text-color font-size-12 font-[600]">
|
||||
<text class="text-color text-[12px] font-[600]">
|
||||
{{ item.entityName }}
|
||||
</text>
|
||||
<view class="notice-footer">
|
||||
<text class="text-color font-size-10 font-[500]">
|
||||
<text class="text-color text-[10px] font-[500]">
|
||||
发布时间:{{ item.effectiveStartTime }}
|
||||
</text>
|
||||
<text class="text-color font-size-10 font-[500] underline-text">
|
||||
<text class="text-color text-[10px] font-[500] underline-text">
|
||||
详情
|
||||
</text>
|
||||
</view>
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
<view v-else-if="props.tipsMessage">
|
||||
<view class="noMessage">
|
||||
<text class="noMessage-text text-color font-size-12 font-[600]">
|
||||
<text class="noMessage-text text-color text-[12px] font-[600]">
|
||||
{{ props.tipsMessage }}
|
||||
</text>
|
||||
</view>
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
object-fit="cover" @click.stop @play="handlePlay" @fullscreenchange="handleFullScreenChange"
|
||||
@error="handleError" />
|
||||
<view v-if="videoUrl && !disabled"
|
||||
class="aigc-photo-card__fullscreen flex flex-items-center flex-justify-center text-white font-size-12"
|
||||
class="aigc-photo-card__fullscreen flex flex-items-center flex-justify-center text-white text-[12px]"
|
||||
@click.stop="requestFullScreen">
|
||||
全屏
|
||||
</view>
|
||||
<view v-if="!videoUrl"
|
||||
class="aigc-photo-card__empty flex flex-items-center flex-justify-center text-white font-size-14">
|
||||
class="aigc-photo-card__empty flex flex-items-center flex-justify-center text-white text-[14px]">
|
||||
视频地址为空
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -5,19 +5,19 @@
|
||||
<view class="flex flex-col px-[16px] pt-[16px] pb-[12px] border-box" @click="lookDetailAction">
|
||||
<view v-if="tag" class="long-answer-tag" :style="longAnswerTagStyle">{{ tag }}</view>
|
||||
<view v-if="title" class="flex flex-row flex-items-start flex-justify-start mb-[4px]">
|
||||
<text class="font-size-16 font-[600] text-[#0B5C2D]"> {{ title }}</text>
|
||||
<text class="text-[16px] font-[600] text-[#0B5C2D]"> {{ title }}</text>
|
||||
</view>
|
||||
<!-- 文字内容,根据数据模式限制预览行数 -->
|
||||
<view v-if="processedContent" class="answer-content font-size-12 font-color-600" :style="answerContentStyle">
|
||||
<view v-if="processedContent" class="answer-content text-[12px] font-color-600" :style="answerContentStyle">
|
||||
<ChatMarkdown :text="processedContent" :fontColor="'#94A3B8'" />
|
||||
</view>
|
||||
<!-- 超过2行时显示...提示 -->
|
||||
<view v-if="!finish" class="flex flex-row flex-items-center mt-[8px]">
|
||||
<text class="font-size-12 font-[500] font-color-600">正在生成</text>
|
||||
<text class="text-[12px] font-[500] font-color-600">正在生成</text>
|
||||
<ChatLoading />
|
||||
</view>
|
||||
<view v-if="isOverflow" class="flex flex-row flex-items-center flex-justify-between mt-[12px]">
|
||||
<text class="font-size-12 font-bold text-[#cbd5e1] mr-[4px]">查看完整{{ tag }}</text>
|
||||
<text class="text-[12px] font-bold text-[#cbd5e1] mr-[4px]">查看完整{{ tag }}</text>
|
||||
<uni-icons type="right" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
<uni-popup ref="popup" type="center" :safe-area="false">
|
||||
<view class="popup-content bg-white mx-[24px] px-[12px] py-16 rounded-[12px]">
|
||||
<view class="header flex flex-items-center pb-[12px]">
|
||||
<view class="title flex-full text-center font-size-17 text-[#000000] font-[500] ml-[24px]">呼叫热线</view>
|
||||
<view class="title flex-full text-center text-[17px] text-[#000000] font-[500] ml-[24px]">呼叫热线</view>
|
||||
<uni-icons type="close" size="24" color="#CACFD8" @click="close" />
|
||||
</view>
|
||||
|
||||
<view class="border-box pl-[12px] pr-[12px]">
|
||||
<view class="font-size-16 text-[#a3a3a3] leading-[22px]">
|
||||
<view class="text-[16px] text-[#a3a3a3] leading-[22px]">
|
||||
如有任何疑问,欢迎随时致电景区咨询热线:
|
||||
<text class="text-[#2563eb]" @click="handleClick(mobleNumber1)">{{ mobleNumber1 }}</text> / <text
|
||||
class="text-[#2563eb]" @click="handleClick(mobleNumber2)">{{ mobleNumber2 }}</text>,
|
||||
|
||||
@@ -4,32 +4,32 @@
|
||||
|
||||
<view class="facility-location-card__body px-[24px] pb-[24px]">
|
||||
<view class="facility-location-card__title-row flex flex-items-center">
|
||||
<view class="facility-location-card__badge text-[#2563eb] bg-[#eff6ff] font-size-12 font-bold">
|
||||
<view class="facility-location-card__badge text-[#2563eb] bg-[#eff6ff] text-[12px] font-bold">
|
||||
{{ type.text }}
|
||||
</view>
|
||||
<view class="facility-location-card__title text-[#1e293b] font-size-18 font-bold ellipsis-1">
|
||||
<view class="facility-location-card__title text-[#1e293b] text-[18px] font-bold ellipsis-1">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="facility-location-card__distance flex flex-items-center text-[#94a3b8] font-size-14 font-bold">
|
||||
<view class="facility-location-card__distance flex flex-items-center text-[#94a3b8] text-[14px] font-bold">
|
||||
<text class="facility-location-card__distance-icon">{{ distance.icon }}</text>
|
||||
<text>{{ distance.text }}</text>
|
||||
</view>
|
||||
|
||||
<view class="facility-location-card__location bg-[#f8fafc] rounded-[20px]">
|
||||
<view
|
||||
class="facility-location-card__location-label flex flex-items-center text-[#64748b] font-size-13 font-bold">
|
||||
class="facility-location-card__location-label flex flex-items-center text-[#64748b] text-[13px] font-bold">
|
||||
<text class="facility-location-card__location-dot">{{ location.icon }}</text>
|
||||
<text>{{ location.label }}</text>
|
||||
</view>
|
||||
<view class="facility-location-card__location-text text-[#1e293b] font-size-16 font-bold">
|
||||
<view class="facility-location-card__location-text text-[#1e293b] text-[16px] font-bold">
|
||||
{{ location.text }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view
|
||||
class="facility-location-card__button flex flex-items-center flex-justify-center bg-[#0f172a] text-white font-size-18 font-bold"
|
||||
class="facility-location-card__button flex flex-items-center flex-justify-center bg-[#0f172a] text-white text-[18px] font-bold"
|
||||
:class="{ 'is-disabled': disabled }" @click="handleAction">
|
||||
<text class="facility-location-card__button-icon">{{ action.icon }}</text>
|
||||
<text>{{ action.text }}</text>
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<view class="faq-help-card bg-white rounded-[24px] w-full">
|
||||
<view class="faq-help-card__header flex flex-items-center">
|
||||
<view class="faq-help-card__icon flex flex-items-center flex-justify-center rounded-full font-size-16 font-bold">
|
||||
<view class="faq-help-card__icon flex flex-items-center flex-justify-center rounded-full text-[16px] font-bold">
|
||||
{{ data.icon }}
|
||||
</view>
|
||||
<view class="faq-help-card__title text-[#1e293b] font-size-20 font-bold">
|
||||
<view class="faq-help-card__title text-[#1e293b] text-[20px] font-bold">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -14,7 +14,7 @@
|
||||
<view class="faq-help-card__list">
|
||||
<view v-for="item in questions" :key="item.id || item.text" class="faq-help-card__item flex flex-items-center"
|
||||
:class="{ 'is-disabled': disabled }" @click="handleSelect(item)">
|
||||
<view class="faq-help-card__question text-[#475569] font-size-18 font-bold ellipsis-1 flex-full">
|
||||
<view class="faq-help-card__question text-[#475569] text-[18px] font-bold ellipsis-1 flex-full">
|
||||
{{ item.text }}
|
||||
</view>
|
||||
<uni-icons type="right" size="16" color="#CBD5E1"></uni-icons>
|
||||
|
||||
@@ -14,14 +14,14 @@
|
||||
|
||||
<image class="g_title mt-[20px]" :src="componentDataMap.title" />
|
||||
|
||||
<text class="font-size-14 font-[400] text-white my-[12px] text-center">
|
||||
<text class="text-[14px] font-[400] text-white my-[12px] text-center">
|
||||
{{ componentDataMap.description }}
|
||||
</text>
|
||||
|
||||
<view class="w-full px-[12px] pb-[8px] flex flex-row" @click="jumpClick">
|
||||
<view class="btn-bg w-full p-[4px] rounded-[24px] flex flex-row">
|
||||
<view
|
||||
class="btn-bg-sub w-full p-[16px] rounded-[20px] flex flex-row flex-items-center flex-justify-center text-white text-center font-size-18 font-bold">
|
||||
class="btn-bg-sub w-full p-[16px] rounded-[20px] flex flex-row flex-items-center flex-justify-center text-white text-center text-[18px] font-bold">
|
||||
{{ componentDataMap.buttonName }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -4,17 +4,17 @@
|
||||
<view v-for="item in cards" :key="item.id"
|
||||
class="long-text-guide-card__summary-card bg-white rounded-[24px] border-box"
|
||||
:class="{ 'is-disabled': disabled }" @click="openDetail(item)">
|
||||
<view class="long-text-guide-card__badge font-size-12 font-bold" :class="`is-${item.badgeTone}`">
|
||||
<view class="long-text-guide-card__badge text-[12px] font-bold" :class="`is-${item.badgeTone}`">
|
||||
{{ item.badge }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__summary-title text-[#1e293b] font-size-18 font-bold">
|
||||
<view class="long-text-guide-card__summary-title text-[#1e293b] text-[18px] font-bold">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__summary-text text-[#94a3b8] font-size-14 font-[500] ellipsis-2">
|
||||
<view class="long-text-guide-card__summary-text text-[#94a3b8] text-[14px] font-[500] ellipsis-2">
|
||||
{{ item.summary }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__summary-footer flex flex-items-center flex-justify-between">
|
||||
<text class="text-[#cbd5e1] font-size-12 font-bold">{{ item.footer }}</text>
|
||||
<text class="text-[#cbd5e1] text-[12px] font-bold">{{ item.footer }}</text>
|
||||
<uni-icons type="right" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
@@ -26,10 +26,10 @@
|
||||
@click="closeDetail">
|
||||
<uni-icons type="left" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
<view class="long-text-guide-card__detail-title text-[#1e293b] font-size-18 font-bold ellipsis-1">
|
||||
<view class="long-text-guide-card__detail-title text-[#1e293b] text-[18px] font-bold ellipsis-1">
|
||||
{{ activeItem.title }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__badge long-text-guide-card__detail-badge font-size-12 font-bold"
|
||||
<view class="long-text-guide-card__badge long-text-guide-card__detail-badge text-[12px] font-bold"
|
||||
:class="`is-${activeItem.badgeTone}`">
|
||||
{{ activeItem.badge }}
|
||||
</view>
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
<view class="long-text-guide-card__rich-body">
|
||||
<view v-for="(paragraph, paragraphIndex) in paragraphsBeforeImage" :key="`before-${paragraphIndex}`"
|
||||
class="long-text-guide-card__paragraph text-[#475569] font-size-15 font-[500]">
|
||||
class="long-text-guide-card__paragraph text-[#475569] text-[15px] font-[500]">
|
||||
<template v-for="(segment, segmentIndex) in getSegments(paragraph)"
|
||||
:key="`${paragraphIndex}-${segmentIndex}`">
|
||||
<text v-if="segment.highlight" class="long-text-guide-card__highlight font-bold">
|
||||
@@ -50,18 +50,18 @@
|
||||
<image v-if="activeItem.image" class="long-text-guide-card__main-image w-full rounded-[14px] block"
|
||||
:src="activeItem.image" mode="aspectFill" />
|
||||
|
||||
<view class="long-text-guide-card__section-title text-[#1e293b] font-size-16 font-bold">
|
||||
<view class="long-text-guide-card__section-title text-[#1e293b] text-[16px] font-bold">
|
||||
{{ activeItem.sectionTitle }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__tip-block bg-[#ecfdf5]">
|
||||
<view v-for="(tip, index) in activeItem.tips || []" :key="tip"
|
||||
class="long-text-guide-card__tip text-[#047857] font-size-14 font-bold">
|
||||
class="long-text-guide-card__tip text-[#047857] text-[14px] font-bold">
|
||||
{{ index + 1 }} {{ tip }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view v-for="(paragraph, paragraphIndex) in paragraphsAfterTips" :key="`after-${paragraphIndex}`"
|
||||
class="long-text-guide-card__paragraph text-[#475569] font-size-15 font-[500]">
|
||||
class="long-text-guide-card__paragraph text-[#475569] text-[15px] font-[500]">
|
||||
<template v-for="(segment, segmentIndex) in getSegments(paragraph)"
|
||||
:key="`${paragraphIndex}-${segmentIndex}`">
|
||||
<text v-if="segment.highlight" class="long-text-guide-card__highlight font-bold">
|
||||
@@ -73,23 +73,23 @@
|
||||
</view>
|
||||
|
||||
<view v-if="activeItem.action?.type === 'map'" class="long-text-guide-card__action-zone">
|
||||
<view class="long-text-guide-card__action-label text-[#94a3b8] font-size-11 font-bold">
|
||||
<view class="long-text-guide-card__action-label text-[#94a3b8] text-[11px] font-bold">
|
||||
{{ activeItem.action.label }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__map-card rounded-[16px] overflow-hidden">
|
||||
<view class="long-text-guide-card__map-image-wrap relative">
|
||||
<image class="long-text-guide-card__map-image w-full block" :src="activeItem.action.image"
|
||||
mode="aspectFill" />
|
||||
<view class="long-text-guide-card__map-tag text-white font-size-10 font-bold">
|
||||
<view class="long-text-guide-card__map-tag text-white text-[10px] font-bold">
|
||||
{{ activeItem.action.tag }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="long-text-guide-card__map-bar flex flex-items-center bg-white">
|
||||
<view class="flex-full">
|
||||
<view class="text-[#1e293b] font-size-15 font-bold">{{ activeItem.action.title }}</view>
|
||||
<view class="text-[#94a3b8] font-size-12 font-bold mt-[2px]">{{ activeItem.action.subtitle }}</view>
|
||||
<view class="text-[#1e293b] text-[15px] font-bold">{{ activeItem.action.title }}</view>
|
||||
<view class="text-[#94a3b8] text-[12px] font-bold mt-[2px]">{{ activeItem.action.subtitle }}</view>
|
||||
</view>
|
||||
<view class="long-text-guide-card__nav-btn text-white bg-[#0f172a] font-size-14 font-bold"
|
||||
<view class="long-text-guide-card__nav-btn text-white bg-[#0f172a] text-[14px] font-bold"
|
||||
@click="handleAction(activeItem)">
|
||||
{{ activeItem.action.buttonText }}
|
||||
</view>
|
||||
@@ -98,14 +98,14 @@
|
||||
</view>
|
||||
|
||||
<view v-else-if="activeItem.action?.type === 'image'" class="long-text-guide-card__action-zone">
|
||||
<view class="long-text-guide-card__action-label text-[#94a3b8] font-size-11 font-bold">
|
||||
<view class="long-text-guide-card__action-label text-[#94a3b8] text-[11px] font-bold">
|
||||
{{ activeItem.action.label }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__photo-card relative" @click="handleAction(activeItem)">
|
||||
<image class="long-text-guide-card__photo-image w-full block" :src="activeItem.action.image"
|
||||
mode="aspectFill" />
|
||||
<view
|
||||
class="long-text-guide-card__expand flex flex-items-center flex-justify-center rounded-full text-white font-size-18 font-bold">
|
||||
class="long-text-guide-card__expand flex flex-items-center flex-justify-center rounded-full text-white text-[18px] font-bold">
|
||||
↗
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -4,18 +4,18 @@
|
||||
<view class="w-vw"></view>
|
||||
<view class="flex flex-col px-[16px] pt-[16px] pb-[12px] border-box" @click="openDetail(item)">
|
||||
|
||||
<view class="long-text-guide-card__badge font-size-12 font-bold" :class="`is-${item.badgeTone}`">
|
||||
<view class="long-text-guide-card__badge text-[12px] font-bold" :class="`is-${item.badgeTone}`">
|
||||
{{ item.badge }}
|
||||
</view>
|
||||
|
||||
<view class="long-text-guide-card__summary-title text-[#1e293b] font-size-18 font-bold">
|
||||
<view class="long-text-guide-card__summary-title text-[#1e293b] text-[18px] font-bold">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__summary-text text-[#94a3b8] font-size-14 font-[500] ellipsis-2">
|
||||
<view class="long-text-guide-card__summary-text text-[#94a3b8] text-[14px] font-[500] ellipsis-2">
|
||||
{{ item.summary }}
|
||||
</view>
|
||||
<view class="long-text-guide-card__summary-footer flex flex-items-center flex-justify-between">
|
||||
<text class="text-[#cbd5e1] font-size-12 font-bold">{{ item.footer }}</text>
|
||||
<text class="text-[#cbd5e1] text-[12px] font-bold">{{ item.footer }}</text>
|
||||
<uni-icons type="right" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<view class="map-navigation-card bg-white rounded-[24px] overflow-hidden w-full">
|
||||
<view class="map-navigation-card__media">
|
||||
<image class="map-navigation-card__image block w-full" :src="data.image" mode="aspectFill" />
|
||||
<view class="map-navigation-card__badge flex flex-items-center text-white font-size-12 font-bold">
|
||||
<view class="map-navigation-card__badge flex flex-items-center text-white text-[12px] font-bold">
|
||||
<text class="map-navigation-card__badge-icon">{{ badge.icon }}</text>
|
||||
<text>{{ badge.text }}</text>
|
||||
</view>
|
||||
@@ -10,15 +10,15 @@
|
||||
|
||||
<view class="map-navigation-card__content flex flex-items-center">
|
||||
<view class="map-navigation-card__info flex-full">
|
||||
<view class="map-navigation-card__title text-[#1e293b] font-size-18 font-bold ellipsis-1">
|
||||
<view class="map-navigation-card__title text-[#1e293b] text-[18px] font-bold ellipsis-1">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
<view class="map-navigation-card__distance text-[#94a3b8] font-size-14 font-bold ellipsis-1">
|
||||
<view class="map-navigation-card__distance text-[#94a3b8] text-[14px] font-bold ellipsis-1">
|
||||
{{ data.distance }}
|
||||
</view>
|
||||
</view>
|
||||
<view
|
||||
class="map-navigation-card__button flex flex-items-center flex-justify-center bg-[#0f172a] text-white font-size-18 font-bold"
|
||||
class="map-navigation-card__button flex flex-items-center flex-justify-center bg-[#0f172a] text-white text-[18px] font-bold"
|
||||
:class="{ 'is-disabled': disabled }" @click="handleAction">
|
||||
<text class="map-navigation-card__button-icon">{{ action.icon }}</text>
|
||||
<text>{{ action.text }}</text>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<uni-popup ref="popup" type="bottom" :safe-area="false">
|
||||
<view class="popup-content pt-[12px] pl-[12px] pr-[12px]">
|
||||
<view class="header flex flex-items-center pb-[12px]">
|
||||
<view class="title flex-full text-center font-size-17 text-[#000000] font-[500] ml-[24px]">更多服务</view>
|
||||
<view class="title flex-full text-center text-[17px] text-[#000000] font-[500] ml-[24px]">更多服务</view>
|
||||
<uni-icons type="close" size="24" color="#CACFD8" @click="close" />
|
||||
</view>
|
||||
|
||||
@@ -11,14 +11,14 @@
|
||||
<view class="flex flex-items-center flex-justify-center">
|
||||
<image v-if="item.icon" class="left" :src="item.icon" />
|
||||
<view class="center flex-full">
|
||||
<view class="font-size-16 text-[#000000] leading-[24px] font-[500]">
|
||||
<view class="text-[16px] text-[#000000] leading-[24px] font-[500]">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view class="font-size-12 text-[#a3a3a3] leading-[16px]">
|
||||
<view class="text-[12px] text-[#a3a3a3] leading-[16px]">
|
||||
{{ item.content }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="right font-size-12 text-white leading-[16px]" @click="handleClick(item)">
|
||||
<view class="right text-[12px] text-white leading-[16px]" @click="handleClick(item)">
|
||||
{{ item.btnText }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
<template>
|
||||
<view class="notice-card w-full">
|
||||
<view v-if="!detailOpen" class="notice-card__summary bg-[#fffbeb] rounded-[24px] w-full">
|
||||
<view class="notice-card__summary-title text-[#b45309] font-size-16 font-bold">
|
||||
<view class="notice-card__summary-title text-[#b45309] text-[16px] font-bold">
|
||||
{{ summary.title }}
|
||||
</view>
|
||||
<view class="notice-card__summary-content text-[#d97706] font-size-14 font-bold">
|
||||
<view class="notice-card__summary-content text-[#d97706] text-[14px] font-bold">
|
||||
{{ summary.content }}
|
||||
</view>
|
||||
<view class="notice-card__summary-footer flex flex-items-center flex-justify-between">
|
||||
<view class="notice-card__summary-time text-[#d97706] font-size-12 font-bold">
|
||||
<view class="notice-card__summary-time text-[#d97706] text-[12px] font-bold">
|
||||
{{ summary.publishTime }}
|
||||
</view>
|
||||
<view class="notice-card__summary-link text-[#b45309] font-size-14 font-bold"
|
||||
<view class="notice-card__summary-link text-[#b45309] text-[14px] font-bold"
|
||||
:class="{ 'is-disabled': disabled }" @click="openDetail">
|
||||
{{ summary.actionText }}
|
||||
</view>
|
||||
@@ -24,7 +24,7 @@
|
||||
@click="closeDetail">
|
||||
<uni-icons type="left" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
<view class="notice-card__head-title text-[#1e293b] font-size-18 font-bold">
|
||||
<view class="notice-card__head-title text-[#1e293b] text-[18px] font-bold">
|
||||
{{ detail.navTitle }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -32,16 +32,16 @@
|
||||
<image class="notice-card__image block w-full" :src="detail.image" mode="aspectFill" />
|
||||
|
||||
<view class="notice-card__detail-body">
|
||||
<view class="notice-card__detail-title text-[#1e293b] font-size-20 font-bold">
|
||||
<view class="notice-card__detail-title text-[#1e293b] text-[20px] font-bold">
|
||||
{{ detail.title }}
|
||||
</view>
|
||||
<view class="notice-card__time-pill flex flex-items-center bg-[#f8fafc] text-[#475569] font-size-13 font-bold">
|
||||
<view class="notice-card__time-pill flex flex-items-center bg-[#f8fafc] text-[#475569] text-[13px] font-bold">
|
||||
<text class="notice-card__time-icon">{{ detail.timeIcon }}</text>
|
||||
<text>{{ detail.publishTime }}</text>
|
||||
</view>
|
||||
<view class="notice-card__divider"></view>
|
||||
<view v-for="paragraph in paragraphs" :key="paragraph.id"
|
||||
class="notice-card__paragraph text-[#475569] font-size-14 font-bold">
|
||||
class="notice-card__paragraph text-[#475569] text-[14px] font-bold">
|
||||
<text v-for="segment in paragraph.segments" :key="segment.text"
|
||||
:class="{ 'notice-card__strong': segment.strong }">
|
||||
{{ segment.text }}
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
</view>
|
||||
</view>
|
||||
<view class="center ml-[12px]">
|
||||
<view class="font-color-900 font-size-14">打开导览地图</view>
|
||||
<view class="font-color-500 font-size-12 mt-[6px]">距你 {{ distance }} · 步行 {{ walk }}</view>
|
||||
<view class="font-color-900 text-[14px]">打开导览地图</view>
|
||||
<view class="font-color-500 text-[12px] mt-[6px]">距你 {{ distance }} · 步行 {{ walk }}</view>
|
||||
</view>
|
||||
<view class="ml-[12px] flex flex-items-center flex-justify-center w-32 h-32 rounded-full bg-[#f2f5f8]">
|
||||
<uni-icons class="mb-[2px]" type="right" size="12" color="#99A0AE" />
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<view class="poi-compare-card__mark flex flex-items-center flex-justify-center rounded-full flex-shrink-0">
|
||||
{{ data.icon }}
|
||||
</view>
|
||||
<view class="poi-compare-card__title text-[#1e293b] font-size-18 font-bold ellipsis-1 flex-full">
|
||||
<view class="poi-compare-card__title text-[#1e293b] text-[18px] font-bold ellipsis-1 flex-full">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -15,14 +15,14 @@
|
||||
:class="{ 'is-disabled': disabled }" @click="handleSelect(item)">
|
||||
<image class="poi-compare-card__image block w-full" :src="item.image" mode="aspectFill" />
|
||||
<view v-for="field in item.fields" :key="field.label" class="poi-compare-card__field">
|
||||
<view class="poi-compare-card__field-label text-[#94a3b8] font-size-12 font-bold">
|
||||
<view class="poi-compare-card__field-label text-[#94a3b8] text-[12px] font-bold">
|
||||
{{ field.label }}
|
||||
</view>
|
||||
<view v-if="field.tone" class="poi-compare-card__chip font-size-12 font-bold"
|
||||
<view v-if="field.tone" class="poi-compare-card__chip text-[12px] font-bold"
|
||||
:class="getToneClass(field.tone)">
|
||||
{{ field.value }}
|
||||
</view>
|
||||
<view v-else class="poi-compare-card__field-value text-[#1e293b] font-size-14 font-bold">
|
||||
<view v-else class="poi-compare-card__field-value text-[#1e293b] text-[14px] font-bold">
|
||||
{{ field.value }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -30,7 +30,7 @@
|
||||
</view>
|
||||
|
||||
<view
|
||||
class="poi-compare-card__primary flex flex-items-center flex-justify-center bg-[#0f172a] text-white font-size-15 font-bold"
|
||||
class="poi-compare-card__primary flex flex-items-center flex-justify-center bg-[#0f172a] text-white text-[15px] font-bold"
|
||||
:class="{ 'is-disabled': disabled }" @click="openDetail">
|
||||
{{ data.detailButtonText }}
|
||||
</view>
|
||||
@@ -42,10 +42,10 @@
|
||||
@click="closeDetail">
|
||||
<uni-icons type="left" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
<view class="poi-compare-card__detail-title text-[#1e293b] font-size-20 font-bold flex-full">
|
||||
<view class="poi-compare-card__detail-title text-[#1e293b] text-[20px] font-bold flex-full">
|
||||
{{ detail.title }}
|
||||
</view>
|
||||
<view class="poi-compare-card__compare-label text-[#94a3b8] font-size-12 font-bold">
|
||||
<view class="poi-compare-card__compare-label text-[#94a3b8] text-[12px] font-bold">
|
||||
{{ detail.compareLabel }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -54,30 +54,30 @@
|
||||
<view class="poi-compare-card__table-head poi-compare-card__table-row">
|
||||
<view></view>
|
||||
<view v-for="item in items" :key="item.id || item.name"
|
||||
class="poi-compare-card__table-title text-[#1e293b] font-size-14 font-bold">
|
||||
class="poi-compare-card__table-title text-[#1e293b] text-[14px] font-bold">
|
||||
{{ item.name }}
|
||||
</view>
|
||||
</view>
|
||||
<view v-for="row in detail.rows" :key="row.label"
|
||||
class="poi-compare-card__table-row poi-compare-card__data-row">
|
||||
<view class="poi-compare-card__row-label text-[#94a3b8] font-size-12 font-bold">
|
||||
<view class="poi-compare-card__row-label text-[#94a3b8] text-[12px] font-bold">
|
||||
{{ row.label }}
|
||||
</view>
|
||||
<view v-for="cell in row.values" :key="row.label + '-' + cell.text"
|
||||
class="poi-compare-card__cell text-[#1e293b] font-size-14 font-bold" :class="getCellClass(cell.tone)">
|
||||
class="poi-compare-card__cell text-[#1e293b] text-[14px] font-bold" :class="getCellClass(cell.tone)">
|
||||
{{ cell.text }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="poi-compare-card__recommend">
|
||||
<view class="poi-compare-card__recommend-title text-[#94a3b8] font-size-12 font-bold">
|
||||
<view class="poi-compare-card__recommend-title text-[#94a3b8] text-[12px] font-bold">
|
||||
{{ detail.recommendTitle }}
|
||||
</view>
|
||||
<view class="poi-compare-card__tips">
|
||||
<view v-for="tip in detail.tips" :key="tip.text" class="poi-compare-card__tip flex gap-[10px]">
|
||||
<view class="poi-compare-card__dot rounded-full flex-shrink-0" :class="getDotClass(tip.tone)" />
|
||||
<view class="poi-compare-card__tip-text text-[#334155] font-size-14 font-bold">
|
||||
<view class="poi-compare-card__tip-text text-[#334155] text-[14px] font-bold">
|
||||
{{ tip.text }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -86,7 +86,7 @@
|
||||
|
||||
<view class="poi-compare-card__actions grid grid-cols-2 gap-14">
|
||||
<view v-for="action in detail.actions" :key="action.id || action.text"
|
||||
class="poi-compare-card__action flex flex-items-center flex-justify-center font-size-15 font-bold"
|
||||
class="poi-compare-card__action flex flex-items-center flex-justify-center text-[15px] font-bold"
|
||||
:class="[action.primary ? 'poi-compare-card__action--primary bg-[#0f172a] text-white' : 'poi-compare-card__action--secondary text-[#334155]', { 'is-disabled': disabled }]"
|
||||
@click="handleAction(action)">
|
||||
<text class="poi-compare-card__action-icon">{{ action.icon }}</text>
|
||||
|
||||
@@ -2,26 +2,26 @@
|
||||
<view class="poi-detail-card bg-white rounded-[24px] overflow-hidden">
|
||||
<view class="poi-detail-card__hero relative">
|
||||
<image class="poi-detail-card__image w-full h-full block rounded-[18px]" :src="data.image" mode="aspectFill" />
|
||||
<view class="poi-detail-card__badge flex flex-items-center gap-[4px] font-size-10 font-bold">
|
||||
<view class="poi-detail-card__badge flex flex-items-center gap-[4px] text-[10px] font-bold">
|
||||
<text class="poi-detail-card__badge-icon">⌖</text>
|
||||
<text>{{ data.badge?.text }}</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="poi-detail-card__body">
|
||||
<view class="poi-detail-card__title text-[#1e293b] font-size-24 font-bold">
|
||||
<view class="poi-detail-card__title text-[#1e293b] text-[24px] font-bold">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
|
||||
<view class="poi-detail-card__tip flex flex-items-center gap-[10px]">
|
||||
<view class="poi-detail-card__spark text-[#047857] font-size-18 font-bold">✦</view>
|
||||
<view class="poi-detail-card__tip-text text-[#047857] font-size-14 font-bold">
|
||||
<view class="poi-detail-card__spark text-[#047857] text-[18px] font-bold">✦</view>
|
||||
<view class="poi-detail-card__tip-text text-[#047857] text-[14px] font-bold">
|
||||
{{ data.tip?.text }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view
|
||||
class="poi-detail-card__button flex flex-items-center flex-justify-center gap-[8px] text-white bg-[#0f172a] font-size-16 font-bold"
|
||||
class="poi-detail-card__button flex flex-items-center flex-justify-center gap-[8px] text-white bg-[#0f172a] text-[16px] font-bold"
|
||||
:class="{ 'is-disabled': disabled }" @click="handleAction">
|
||||
<text class="poi-detail-card__button-icon">↗</text>
|
||||
<text>{{ data.action?.text }}</text>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<view class="container">
|
||||
<ModuleTitle :title="recommendTheme.themeName" />
|
||||
|
||||
<view class="container-scroll font-size-0 scroll-x whitespace-nowrap">
|
||||
<view class="container-scroll text-[0px] scroll-x whitespace-nowrap">
|
||||
<view class="card-item bg-white inline-block rounded-[20px] mr-[8px]"
|
||||
v-for="(item, index) in recommendTheme.recommendPostsList" :key="index" @click="sendReply(item)">
|
||||
<view class="m-[4px] relative">
|
||||
@@ -12,7 +12,7 @@
|
||||
</view>
|
||||
|
||||
<view class="card-text border-box">
|
||||
<view class="font-size-11 text-[#99a0ae] ellipsis-1">
|
||||
<view class="text-[11px] text-[#99a0ae] ellipsis-1">
|
||||
{{ item.topic }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
:class="{ 'is-disabled': disabled }" @click="handleSelect(item)">
|
||||
<image class="recommendation-list-card__image block w-full" :src="item.image" mode="aspectFill" />
|
||||
<view class="recommendation-list-card__body p-[16px]">
|
||||
<view class="recommendation-list-card__name text-[#1e293b] font-size-18 font-bold ellipsis-1">
|
||||
<view class="recommendation-list-card__name text-[#1e293b] text-[18px] font-bold ellipsis-1">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view
|
||||
class="recommendation-list-card__distance flex flex-items-center gap-[4px] mt-[4px] text-[#94a3b8] font-size-12 font-bold">
|
||||
class="recommendation-list-card__distance flex flex-items-center gap-[4px] mt-[4px] text-[#94a3b8] text-[12px] font-bold">
|
||||
<text class="recommendation-list-card__pin">⌖</text>
|
||||
<text>{{ item.distance }}</text>
|
||||
</view>
|
||||
<view
|
||||
class="recommendation-list-card__button flex flex-items-center flex-justify-center mt-[12px] text-[#334155] font-size-12 font-bold"
|
||||
class="recommendation-list-card__button flex flex-items-center flex-justify-center mt-[12px] text-[#334155] text-[12px] font-bold"
|
||||
@click.stop="handleSelect(item)">
|
||||
{{ getActionText(item) }}
|
||||
</view>
|
||||
|
||||
@@ -5,11 +5,11 @@
|
||||
:class="{ 'is-disabled': disabled }" @click="openDetail">
|
||||
<image class="route-plan-card__cover block flex-shrink-0" :src="data.image" mode="aspectFill" />
|
||||
<view class="route-plan-card__body flex-full">
|
||||
<view class="route-plan-card__title text-[#1e293b] font-size-18 font-bold ellipsis-1">
|
||||
<view class="route-plan-card__title text-[#1e293b] text-[18px] font-bold ellipsis-1">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
<view class="route-plan-card__tags flex flex-items-center">
|
||||
<view v-for="tag in summaryTags" :key="tag.id || tag.text" class="route-plan-card__tag font-size-12 font-bold"
|
||||
<view v-for="tag in summaryTags" :key="tag.id || tag.text" class="route-plan-card__tag text-[12px] font-bold"
|
||||
:class="getTagClass(tag.tone)">
|
||||
{{ tag.text }}
|
||||
</view>
|
||||
@@ -26,10 +26,10 @@
|
||||
@click="closeDetail">
|
||||
<uni-icons type="left" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
<view class="route-plan-card__detail-title text-[#1e293b] font-size-18 font-bold ellipsis-1 flex-full">
|
||||
<view class="route-plan-card__detail-title text-[#1e293b] text-[18px] font-bold ellipsis-1 flex-full">
|
||||
{{ data.title }}
|
||||
</view>
|
||||
<view class="route-plan-card__detail-badge text-[#047857] bg-[#ecfdf5] font-size-12 font-bold">
|
||||
<view class="route-plan-card__detail-badge text-[#047857] bg-[#ecfdf5] text-[12px] font-bold">
|
||||
{{ detail.badge }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -38,20 +38,20 @@
|
||||
<template v-for="(node, index) in nodes" :key="node.id || node.title">
|
||||
<view class="route-plan-card__node-wrap" :class="{ 'is-disabled': disabled }" @click="handleSelect(node)">
|
||||
<view
|
||||
class="route-plan-card__node-number flex flex-items-center flex-justify-center rounded-full text-[#047857] bg-[#ecfdf5] font-size-12 font-bold">
|
||||
class="route-plan-card__node-number flex flex-items-center flex-justify-center rounded-full text-[#047857] bg-[#ecfdf5] text-[12px] font-bold">
|
||||
{{ index + 1 }}
|
||||
</view>
|
||||
<view class="route-plan-card__node bg-white rounded-[20px] flex flex-items-center">
|
||||
<image class="route-plan-card__node-image block flex-shrink-0" :src="node.image" mode="aspectFill" />
|
||||
<view class="route-plan-card__node-body flex-full">
|
||||
<view class="route-plan-card__node-title text-[#1e293b] font-size-16 font-bold ellipsis-1">
|
||||
<view class="route-plan-card__node-title text-[#1e293b] text-[16px] font-bold ellipsis-1">
|
||||
{{ node.title }}
|
||||
</view>
|
||||
<view class="route-plan-card__node-desc text-[#94a3b8] font-size-12 font-bold ellipsis-1">
|
||||
<view class="route-plan-card__node-desc text-[#94a3b8] text-[12px] font-bold ellipsis-1">
|
||||
{{ node.description }}
|
||||
</view>
|
||||
<view v-if="node.tag"
|
||||
class="route-plan-card__node-tag text-[#d97706] bg-[#fffbeb] font-size-12 font-bold">
|
||||
class="route-plan-card__node-tag text-[#d97706] bg-[#fffbeb] text-[12px] font-bold">
|
||||
{{ node.tag }}
|
||||
</view>
|
||||
</view>
|
||||
@@ -62,7 +62,7 @@
|
||||
<view class="route-plan-card__connector-line"></view>
|
||||
<view class="route-plan-card__connector-arrow"></view>
|
||||
<view
|
||||
class="route-plan-card__connector-chip flex flex-items-center bg-[#f8fafc] rounded-full text-[#64748b] font-size-12 font-bold">
|
||||
class="route-plan-card__connector-chip flex flex-items-center bg-[#f8fafc] rounded-full text-[#64748b] text-[12px] font-bold">
|
||||
<text class="route-plan-card__connector-icon">{{ connectors[index].icon }}</text>
|
||||
<text>{{ connectors[index].text }}</text>
|
||||
</view>
|
||||
@@ -71,11 +71,11 @@
|
||||
</view>
|
||||
|
||||
<view v-if="tips.length" class="route-plan-card__tips bg-[#f8fafc] rounded-[20px]">
|
||||
<view class="route-plan-card__tips-title text-[#64748b] font-size-14 font-bold">
|
||||
<view class="route-plan-card__tips-title text-[#64748b] text-[14px] font-bold">
|
||||
{{ detail.tipsTitle }}
|
||||
</view>
|
||||
<view v-for="tip in tips" :key="tip"
|
||||
class="route-plan-card__tip flex flex-items-center text-[#334155] font-size-13 font-bold">
|
||||
class="route-plan-card__tip flex flex-items-center text-[#334155] text-[13px] font-bold">
|
||||
<view class="route-plan-card__tip-dot rounded-full flex-shrink-0"></view>
|
||||
<view>{{ tip }}</view>
|
||||
</view>
|
||||
|
||||
@@ -4,16 +4,16 @@
|
||||
<image class="scenic-image-card__image block w-full" :src="data.image" mode="aspectFill" />
|
||||
|
||||
<view
|
||||
class="scenic-image-card__expand flex flex-items-center flex-justify-center rounded-full text-white font-size-18 font-bold"
|
||||
class="scenic-image-card__expand flex flex-items-center flex-justify-center rounded-full text-white text-[18px] font-bold"
|
||||
@click.stop="handleAction">
|
||||
{{ action.icon }}
|
||||
</view>
|
||||
|
||||
<view v-if="hasCaption" class="scenic-image-card__caption">
|
||||
<view v-if="caption.title" class="scenic-image-card__title text-white font-size-18 font-bold ellipsis-1">
|
||||
<view v-if="caption.title" class="scenic-image-card__title text-white text-[18px] font-bold ellipsis-1">
|
||||
{{ caption.title }}
|
||||
</view>
|
||||
<view v-if="caption.subtitle" class="scenic-image-card__subtitle text-white font-size-14 font-bold ellipsis-1">
|
||||
<view v-if="caption.subtitle" class="scenic-image-card__subtitle text-white text-[14px] font-bold ellipsis-1">
|
||||
{{ caption.subtitle }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
<view class="visual-action-row flex flex-items-center gap-[12px] p-[12px] bg-white rounded-[18px] border-box"
|
||||
:class="{ 'is-disabled': disabled }" @click="handleClick">
|
||||
<view
|
||||
class="visual-action-row__icon flex flex-items-center flex-justify-center w-42 h-42 rounded-[14px] font-size-18 font-bold"
|
||||
class="visual-action-row__icon flex flex-items-center flex-justify-center w-42 h-42 rounded-[14px] text-[18px] font-bold"
|
||||
:class="toneClass">
|
||||
<slot name="icon">{{ icon }}</slot>
|
||||
</view>
|
||||
<view class="visual-action-row__body flex-full">
|
||||
<view class="visual-action-row__title text-[#1e293b] font-size-14 font-bold ellipsis-1">{{ title }}</view>
|
||||
<view class="visual-action-row__title text-[#1e293b] text-[14px] font-bold ellipsis-1">{{ title }}</view>
|
||||
<view v-if="subtitle" class="visual-action-row__subtitle ellipsis-1">
|
||||
{{ subtitle }}
|
||||
</view>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<view
|
||||
class="visual-badge flex flex-items-center flex-justify-center rounded-[50px] font-size-10 font-bold whitespace-nowrap"
|
||||
class="visual-badge flex flex-items-center flex-justify-center rounded-[50px] text-[10px] font-bold whitespace-nowrap"
|
||||
:class="toneClass">
|
||||
<slot>{{ label }}</slot>
|
||||
</view>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
@click="$emit('back')">
|
||||
<uni-icons type="left" size="16" color="#CBD5E1"></uni-icons>
|
||||
</view>
|
||||
<view class="visual-detail__title flex-full text-[#1e293b] font-size-14 font-bold ellipsis-1">{{ title }}</view>
|
||||
<view class="visual-detail__title flex-full text-[#1e293b] text-[14px] font-bold ellipsis-1">{{ title }}</view>
|
||||
<BadgePill v-if="tag" :label="tag" :tone="tone" />
|
||||
</view>
|
||||
<slot />
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<view class="container pl-[12px]">
|
||||
<view class="container-scroll font-size-0 scroll-x whitespace-nowrap">
|
||||
<view class="container-scroll text-[0px] scroll-x whitespace-nowrap">
|
||||
|
||||
<view class="card-item bg-white inline-block rounded-[20px] mr-[10px]" v-for="(item, index) in list" :key="index"
|
||||
@click="sendReply(item)">
|
||||
@@ -9,10 +9,10 @@
|
||||
<image class="card-img flex-shrink-0 rounded-[14px]" :src="createSvgIndex(index)" />
|
||||
|
||||
<view class="min-width-0 flex flex-col flex-full pl-[8px] py-[4px]">
|
||||
<view class="w-full font-size-12 font-[600] text-[#171717] ellipsis-1">
|
||||
<view class="w-full text-[12px] font-[600] text-[#171717] ellipsis-1">
|
||||
{{ item.title }}
|
||||
</view>
|
||||
<view class="w-full font-size-9 text-[#94a3b8] ellipsis-1">
|
||||
<view class="w-full text-[9px] text-[#94a3b8] ellipsis-1">
|
||||
{{ item.subTitle }}
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<view class="bg-[#f5f7fa] flex flex-col h-screen overflow-hidden">
|
||||
<TopNavBar title="房间相册" backgroundColor="transparent" />
|
||||
<view class="p-[8px]">
|
||||
<text class="ml-[4px] font-size-18 text-[#171717] font-[500]">全部({{ albumList.length }})</text>
|
||||
<text class="ml-[4px] text-[18px] text-[#171717] font-[500]">全部({{ albumList.length }})</text>
|
||||
</view>
|
||||
|
||||
<scroll-view scroll-y class="scroll-container overflow-auto">
|
||||
|
||||
@@ -9,12 +9,12 @@
|
||||
<uni-icons fontFamily="znicons" size="20" color="#171717">
|
||||
{{ zniconsMap[moduleItem.icon] }}
|
||||
</uni-icons>
|
||||
<text class="ml-[4px] font-size-12 text-[#171717] leading-[20px]">
|
||||
<text class="ml-[4px] text-[12px] text-[#171717] leading-[20px]">
|
||||
{{ moduleItem.title }}
|
||||
</text>
|
||||
</view>
|
||||
<view class="border-box flex flex-col flex-items-start mt-[4px] pb-[12px]">
|
||||
<text class="font-size-12 text-[#525866] leading-[20px] mb-[4px]" v-for="(text, index) in moduleItem.desc"
|
||||
<text class="text-[12px] text-[#525866] leading-[20px] mb-[4px]" v-for="(text, index) in moduleItem.desc"
|
||||
:key="index">
|
||||
{{ text }}
|
||||
</text>
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
<ModuleTitle v-if="showTitle" title="套餐包含内容" />
|
||||
<view class="flex flex-items-start flex-col" v-for="(item, index) in goodsData.commodityPackageConfig" :key="index">
|
||||
<view class="title-row py-[4px] ml-[4px]">
|
||||
<text class="left font-size-14 text-[#171717]">{{ item.name }}</text>
|
||||
<text class="left text-[14px] text-[#171717]">{{ item.name }}</text>
|
||||
<view class="sep" aria-hidden="true"></view>
|
||||
<text class="right font-size-14 text-[#171717]">{{ item.count }}{{ item.unit }}</text>
|
||||
<text class="right text-[14px] text-[#171717]">{{ item.count }}{{ item.unit }}</text>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
@@ -35,13 +35,13 @@
|
||||
|
||||
<!-- 立即抢购 -->
|
||||
<view class="footer border-top">
|
||||
<view class="amt font-size-20 font-bold text-[#ff3d60] line-height-28 flex flex-items-center mr-[8px]">
|
||||
<view class="amt text-[20px] font-bold text-[#ff3d60] line-height-28 flex flex-items-center mr-[8px]">
|
||||
{{ calculatedTotalPrice }}
|
||||
</view>
|
||||
|
||||
<view class="btn rounded-[10px] flex flex-items-center ml-auto pl-[8px]" @click="navigateToPay(goodsData)">
|
||||
<image class="icon" src="https://oss.nianxx.cn/mp/static/version_101/common/btn.png" />
|
||||
<text class="font-size-16 font-[500] text-white">立即预定</text>
|
||||
<text class="text-[16px] font-[500] text-white">立即预定</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
@@ -16,14 +16,14 @@
|
||||
<!-- 协议勾选 -->
|
||||
<view class="login-agreement flex flex-items-center">
|
||||
<CheckBox v-model="isAgree">
|
||||
<text class="font-size-12 text-[#525866]">我已阅读并同意</text>
|
||||
<text class="font-size-12 text-[#0CCD58] ml-[4px] mr-[4px]"
|
||||
<text class="text-[12px] text-[#525866]">我已阅读并同意</text>
|
||||
<text class="text-[12px] text-[#0CCD58] ml-[4px] mr-[4px]"
|
||||
@click.stop="handleAgreeClick('service')">《服务协议》</text>
|
||||
<text class="font-size-12 text-[#525866]">和</text>
|
||||
<text class="font-size-12 text-[#0CCD58] ml-[4px] mr-[4px]"
|
||||
<text class="text-[12px] text-[#525866]">和</text>
|
||||
<text class="text-[12px] text-[#0CCD58] ml-[4px] mr-[4px]"
|
||||
@click.stop="handleAgreeClick('privacy')">《隐私协议》</text>
|
||||
<text class="font-size-12 text-[#525866]">,\n</text>
|
||||
<text class="font-size-12 text-[#525866] ml-[30px]">授权与账号关联操作</text>
|
||||
<text class="text-[12px] text-[#525866]">,\n</text>
|
||||
<text class="text-[12px] text-[#525866] ml-[30px]">授权与账号关联操作</text>
|
||||
</CheckBox>
|
||||
</view>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user