Files
tuniao-ui/vipPage/home/ucharts/ucharts.vue
T
2026-03-19 10:47:37 +08:00

1336 lines
44 KiB
Vue

<template>
<view class="template-ucharts tn-safe-area-inset-bottom">
<!-- 顶部自定义导航 -->
<!-- <tn-nav-bar fixed alpha customBack>
<view slot="back" class='tn-custom-nav-bar__back'
@click="goBack">
<text class='icon tn-icon-left'></text>
<text class='icon tn-icon-home-capsule-fill'></text>
</view>
</tn-nav-bar> -->
<!-- 顶部自定义导航 -->
<tn-nav-bar fixed :isBack="false" :bottomShadow="false" :backgroundColor="navBarBackgroundColor">
<view id="navbar" class="custom-nav tn-flex tn-flex-col-center tn-flex-row-left">
<!-- 图标logo -->
<view class="custom-nav__back">
<view class="logo-pic tn-shadow-blur" style="background-image:url('https://cdn.nlark.com/yuque/0/2022/jpeg/280373/1646920408332-assets/web-upload/6ea58bb4-cb0d-4034-b9ac-a0155d5c3afb.jpeg')">
<view class="logo-image">
</view>
</view>
<!-- <view class="tn-icon-left"></view> -->
</view>
<!-- -->
<!-- <view class="custom-nav__search tn-flex tn-flex-col-center tn-flex-row-center ">
<view class="custom-nav__search__box tn-flex tn-flex-col-center tn-flex-row-center tn-color-white">
<text class="tn-text-bold tn-text-xxl">北北壁纸库</text>
</view>
</view> -->
<!-- 搜索框 -->
<view class="custom-nav__search tn-flex tn-flex-col-center tn-flex-row-center" :style="[navBarStyle]">
<view class="custom-nav__search__box tn-flex tn-flex-col-center tn-flex-row-left">
<view class="custom-nav__search__text tn-padding-left tn-margin-left tn-text-bold tn-text-xl">uCharts跨全端图表</view>
</view>
</view>
</view>
</tn-nav-bar>
<swiper class="card-swiper" :circular="true"
:autoplay="true" duration="500" interval="28000" @change="cardSwiper">
<swiper-item v-for="(item,index) in swiperList" :key="index" :class="cardCur==index?'cur':''">
<view class="swiper-item image-banner">
<image :src="item.url" mode="aspectFill" v-if="item.type=='image'"></image>
</view>
</swiper-item>
</swiper>
<view class="indication">
<block v-for="(item,index) in swiperList" :key="index">
<view class="spot" :class="cardCur==index?'active':''"></view>
</block>
</view>
<!-- 方式15 start-->
<view class="tn-flex tn-margin-xs tn-padding-top-sm tn-color-white icon-function" id="page_tips">
<view class="tn-flex-1 tn-padding-sm tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon15__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur ">
<view class="tn-icon-image-text"></view>
</view>
<view class="tn-text-center">
<text class="tn-text-ellipsis">应用手册</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-padding-sm tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon15__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur">
<view class="tn-icon-message"></view>
</view>
<view class="tn-text-center">
<text class="tn-text-ellipsis">问题反馈</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-padding-sm tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon15__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur">
<view class="tn-icon-brand"></view>
</view>
<view class="tn-text-center">
<text class="tn-text-ellipsis">关于应用</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-padding-sm tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon15__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur">
<view class="tn-icon-honor"></view>
</view>
<view class="tn-text-center">
<text class="tn-text-ellipsis">服务条款</text>
</view>
</view>
</view>
</view>
<!-- 方式15 end-->
<!-- 更多信息-->
<view class="health-shadow tn-margin tn-color-black tn-bg-white" style="position: relative;z-index: 1;padding: 20rpx 6rpx;">
<tn-notice-bar :list="list" mode="vertical"></tn-notice-bar>
<!-- 方式9 start-->
<view class="tn-flex">
<view class="tn-flex-1 tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon9__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur tn-bg-orange tn-color-white">
<view class="tn-icon-chemistry"></view>
</view>
<view class="tn-color-black tn-text-sm tn-text-center">
<text class="tn-text-ellipsis">核酸结果</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon9__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur tn-bg-red tn-color-white">
<view class="tn-icon-map"></view>
</view>
<view class="tn-color-black tn-text-sm tn-text-center">
<text class="tn-text-ellipsis">核酸地点</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon9__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur tn-bg-cyan tn-color-white">
<view class="tn-icon-safe"></view>
</view>
<view class="tn-color-black tn-text-sm tn-text-center">
<text class="tn-text-ellipsis">防疫专区</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon9__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur tn-bg-blue tn-color-white">
<view class="tn-icon-footprint"></view>
</view>
<view class="tn-color-black tn-text-sm tn-text-center">
<text class="tn-text-ellipsis">日常行程</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-margin-xs tn-radius">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="icon9__item--icon tn-flex tn-flex-row-center tn-flex-col-center tn-shadow-blur tn-bg-purple tn-color-white">
<view class="tn-icon-gift"></view>
</view>
<view class="tn-color-black tn-text-sm tn-text-center">
<text class="tn-text-ellipsis">粤享福利</text>
</view>
</view>
</view>
</view>
</view>
<!-- banner start-->
<view class="tn-flex tn-flex-wrap tn-padding-xs" style="margin-top: -30rpx;" @click="navTuniaoUI">
<view class="" style="width: 100%;">
<view class="image-piccapsule tn-shadow-blur" style="background-image:url('https://cdn.nlark.com/yuque/0/2022/png/280373/1645424144815-assets/web-upload/c4c49dcc-adb1-4976-8558-234b88ae98ff.png');">
<view class="image-capsule">
</view>
</view>
</view>
</view>
<!-- banner end-->
<!-- 方式7 start-->
<view class="tn-flex tn-flex-wrap tn-margin health-shadow">
<block v-for="(item, index) in icons" :key="index">
<view class=" " style="width: 25%;">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center tn-padding-xl">
<view class="icon7__item--icon tn-flex tn-flex-row-center tn-flex-col-center">
<image :src="item.url" mode='aspectFit'></image>
</view>
<view class="tn-color-black tn-text-df tn-text-center">
<text class="tn-text-ellipsis">{{item.title}}</text>
</view>
</view>
</view>
</block>
</view>
<!-- 方式16 end-->
<view class="tn-flex tn-flex-row-between">
<view class="justify-content-item tn-margin tn-text-bold tn-text-xxl">
推荐博主
</view>
<view class="justify-content-item tn-margin tn-text-lg tn-color-gray--disabled">
<text class="tn-padding-xs">全部</text>
<text class="tn-icon-topics"></text>
</view>
</view>
<swiper class="card-swiper2 tn-margin-top-sm" :circular="true"
:autoplay="false" :duration="500" @change="resume">
<swiper-item v-for="(item,index) in resumeList" :key="index" :class="cardCur2==index?'cur':''">
<!-- <view class="swiper-item image-banner">
<image :src="item.url" mode="aspectFill" v-if="item.type=='image'"></image>
</view> -->
<view class="swiper-item" :style="'background-image:url('+ item.url + ');width: 660rpx;height: 100%;background-size: cover;border-radius: 15rpx;'">
</view>
<view class="swiper-item2 image-banner tn-shadow-blur" :style="'background-image:url('+ item.avatar +');width: 120rpx;height: 120rpx;background-size: cover;'">
</view>
<view class="swiper-item-text tn-text-shadow-indigo">
<view class="tn-text-bold tn-color-blue--dark" style="font-size: 45rpx;">{{item.title}}</view>
<view class="tn-color-blue--dark tn-padding-top-sm">{{item.name}}</view>
<view class="tn-flex tn-padding-top-xl" style="margin-left: -50rpx;">
<view class="tn-flex-1 tn-padding-sm tn-margin-right">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="">
<view class="tn-text-xxl tn-color-blue">{{item.hot}}</view>
</view>
<view class="tn-margin-top-xs tn-color-grey tn-text-df tn-text-center">
<text class="tn-icon-fire"></text>
<text class="tn-padding-left-xs">人气</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-padding-sm tn-margin-left tn-margin-right">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="">
<view class="tn-text-xxl tn-color-orange">{{item.share}}</view>
</view>
<view class="tn-margin-top-xs tn-color-grey tn-text-df tn-text-center">
<text class="tn-icon-share-circle"></text>
<text class="tn-padding-left-xs">分享</text>
</view>
</view>
</view>
<view class="tn-flex-1 tn-padding-sm tn-margin-left">
<view class="tn-flex tn-flex-direction-column tn-flex-row-center tn-flex-col-center">
<view class="">
<view class="tn-text-xxl tn-color-red">{{item.love}}</view>
</view>
<view class="tn-margin-top-xs tn-color-grey tn-text-df tn-text-center">
<text class="tn-icon-like"></text>
<text class="tn-padding-left-xs">爱心</text>
</view>
</view>
</view>
</view>
</view>
</swiper-item>
</swiper>
<!-- <view class="indication">
<block v-for="(item,index) in resumeList" :key="index">
<view class="spot" :class="cardCur==index?'active':''"></view>
</block>
</view> -->
<view class="">
<view class="tn-flex tn-flex-row-between">
<view class="justify-content-item tn-margin tn-text-bold tn-text-xxl">
热门项目
</view>
<view class="justify-content-item tn-margin tn-text-lg tn-color-gray--disabled">
<text class="tn-padding-xs">全部</text>
<text class="tn-icon-topics"></text>
</view>
</view>
<view class="tn-flex tn-margin-left tn-margin-right tn-margin-top-sm">
<view class="tn-flex-2">
<view class="image-pic tn-margin-right" style="background-image:url('https://resource.tuniaokj.com/images/shop/card.jpg')">
<view class="image-tuniao1">
</view>
</view>
</view>
<view class="tn-flex-1">
<view class="image-pic" style="background-image:url('https://resource.tuniaokj.com/images/shop/phonecase1.jpg')">
<view class="image-tuniao2">
</view>
</view>
<view class="image-pic tn-margin-top" style="background-image:url('https://resource.tuniaokj.com/images/shop/banner1.jpg')">
<view class="image-tuniao2">
</view>
</view>
</view>
</view>
<view class="tn-flex tn-flex-row-between tn-margin-top">
<view class="justify-content-item tn-margin tn-text-bold tn-text-xxl">
业务范围
</view>
<!-- <view class="justify-content-item tn-margin tn-text-xxl tn-color-gray--disabled">
<text class="tn-padding-xs">全部</text>
<text class="tn-icon-topics"></text>
</view> -->
</view>
<view class="tn-info__container tn-flex tn-flex-wrap tn-flex-col-center tn-flex-row-between tn-margin-left tn-margin-right">
<block v-for="(item, index) in tuniaoData" :key="index">
<view class="tn-info__item tn-flex tn-flex-direction-row tn-flex-col-center tn-flex-row-between tn-color-white" :class="[`tn-bg-${item.color}`]">
<view class="tn-info__item__left tn-flex tn-flex-direction-row tn-flex-col-center tn-flex-row-left">
<!-- <view class="tn-info__item__left--icon tn-flex tn-flex-col-center tn-flex-row-center" :class="[`tn-bg-${item.color}--light tn-color-${item.color}`]">
<view :class="[`tn-icon-${item.icon}`]"></view>
</view> -->
<view class="tn-info__item__left__content">
<view class="tn-info__item__left__content--title tn-text-xxl">{{ item.title }}</view>
<view class="tn-info__item__left__content--data tn-padding-top-xs">
{{ item.value }}
<text class="tn-icon-right tn-padding-left-xs"></text>
</view>
</view>
</view>
<view class="tn-info__item__right">
<view class="tn-info__item__right--icon">
<view :class="[`tn-icon-${item.icon}`]"></view>
</view>
</view>
</view>
</block>
</view>
</view>
<!-- 底部tabbar start-->
<view class="tabbar footerfixed">
<view class="action" @click="">
<view class="bar-icon">
<!-- <view class="tn-icon-home-smile tn-color-gray--dark">
</view> -->
<image class="" src='https://resource.tuniaokj.com/images/tabbar/home_tnnew.png'></image>
<!-- <image class="" src='https://resource.tuniaokj.com/images/bless/bless-home.png'></image> -->
</view>
<view class="tn-color-gray">首页</view>
</view>
<view class="action" @click="">
<view class="bar-icon">
<!-- <view class="tn-icon-discover tn-color-gray--dark">
</view> -->
<image class="" src='https://resource.tuniaokj.com/images/tabbar/information_tn.png'></image>
<!-- <image class="" src='https://resource.tuniaokj.com/images/bless/bless-flower.png'></image> -->
</view>
<view class="tn-color-gray">发现</view>
</view>
<!-- <view class="action bar-center">
<view class="bar-circle tn-shadow-blur">
<view class="tn-icon-camera-fill tn-color-white">
</view>
</view>
<view class="tn-color-gray">发布</view>
</view> -->
<view class="action bar-center" @click="">
<view class="nav-index-button">
<view class="nav-index-button__content">
<view class="nav-index-button__content--icon tn-flex tn-flex-row-center tn-flex-col-center">
<!-- <view class="tn-icon-logo-tuniao"></view> -->
<view class="bar-circle">
<!-- <image class="" src='https://resource.tuniaokj.com/images/login/1/login_top3.png'></image> -->
<image class="" src='https://resource.tuniaokj.com/images/bless/bless-tiger.png'></image>
</view>
</view>
</view>
<view class="nav-index-button__meteor">
<view class="nav-index-button__meteor__wrapper">
<view v-for="(item,index) in 6" :key="index" class="nav-index-button__meteor__item" :style="{transform: `rotateX(${-60 + (30 * index)}deg) rotateZ(${-60 + (30 * index)}deg)`}">
<view class="nav-index-button__meteor__item--pic"></view>
</view>
</view>
</view>
</view>
<!-- <view class="tn-color-gray">发布</view> -->
</view>
<view class="action" @click="">
<view class="bar-icon">
<!-- <view class="tn-icon-image-text tn-color-gray--dark">
</view> -->
<image class="" src='https://resource.tuniaokj.com/images/tabbar/case_tn.png'></image>
<!-- <image class="" src='https://resource.tuniaokj.com/images/bless/bless-china.png'></image> -->
</view>
<view class="tn-color-gray">案例</view>
</view>
<view class="action" @click="">
<view class="bar-icon">
<!-- <view class="tn-icon-my tn-color-gray--dark">
</view> -->
<image class="" src='https://resource.tuniaokj.com/images/tabbar/my_tn.png'></image>
<!-- <image class="" src='https://resource.tuniaokj.com/images/bless/bless-money.png'></image> -->
</view>
<view class="tn-color-gray">我的</view>
</view>
</view>
<view class="tn-padding-xl"></view>
<!-- 回到首页悬浮按钮-->
<nav-index-button></nav-index-button>
</view>
</template>
<script>
import template_page_mixin from '@/libs/mixin/template_page_mixin.js'
import NavIndexButton from '@/libs/components/nav-index-button.vue'
export default {
name: 'TemplateUcharts',
mixins: [template_page_mixin],
components: { NavIndexButton },
data(){
return {
list: [
'uCharts跨全端图表,荣获插件大赛一等奖!',
'感谢DCloud以及mpvue团队的鼓励和认可!',
'感谢各位开发者的问题反馈和慷慨赞赏!'
],
cardCur: 0,
swiperList: [{
id: 0,
type: 'image',
title: '免费开源',
name: '商业合作请联系作者',
text: '微信:tnkewo',
url: 'https://resource.tuniaokj.com/images/swiper/adno3.jpg',
}, {
id: 1,
type: 'image',
title: '图鸟南南',
name: '欢迎加入东东们',
text: '如果你也有不错的作品',
url: 'https://resource.tuniaokj.com/images/swiper/adno4.jpg',
}, {
id: 2,
type: 'image',
title: '图鸟西西',
name: '一起玩转scss',
text: '用最少的代码做最骚的效果',
url: 'https://resource.tuniaokj.com/images/swiper/adno5.jpg',
}, {
id: 3,
type: 'image',
title: '图鸟北北',
name: '微信号 tnkewo',
text: '商业合作请联系作者',
url: 'https://resource.tuniaokj.com/images/swiper/adno2.jpg',
}],
cardCur2: 0,
resumeList: [{
id: 0,
type: 'image',
title: '蔡东东',
name: '产品总监',
hot: '1.29W',
share: '216',
love: '962',
avatar: 'https://resource.tuniaokj.com/images/blogger/avatar_4.jpeg',
url: 'https://resource.tuniaokj.com/images/resume/resume-bg.jpg',
}, {
id: 1,
type: 'image',
title: '图鸟北北',
name: 'UI设计师',
hot: '964',
share: '94',
love: '186',
avatar: 'https://resource.tuniaokj.com/images/blogger/avatar_1.jpeg',
url: 'https://resource.tuniaokj.com/images/resume/resume-bg.jpg',
}, {
id: 2,
type: 'image',
title: '图鸟西西',
name: '高级前端',
hot: '3.26K',
share: '146',
love: '379',
avatar: 'https://resource.tuniaokj.com/images/blogger/avatar_2.jpeg',
url: 'https://resource.tuniaokj.com/images/resume/resume-bg.jpg',
}, {
id: 3,
type: 'image',
title: '图鸟南南',
name: '项目经理',
hot: '6.32K',
share: '133',
love: '432',
avatar: 'https://resource.tuniaokj.com/images/blogger/avatar_3.jpeg',
url: 'https://resource.tuniaokj.com/images/resume/resume-bg.jpg',
}, {
id: 4,
type: 'image',
title: '图鸟猪猪',
name: '纯打杂',
hot: '8.65K',
share: '321',
love: '886',
avatar: 'https://resource.tuniaokj.com/images/blogger/blogger_beibei.jpg',
url: 'https://resource.tuniaokj.com/images/resume/resume-bg.jpg',
}],
icons: [
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647138791884-assets/web-upload/dc660938-35df-4ba0-bb93-1dfc2045f2c0.png",
title: "柱状图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647139412104-assets/web-upload/0a9b8682-ba75-48c0-93c0-91e7bbd91b55.png",
title: "柱状堆叠图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647139725183-assets/web-upload/c6a007e8-e17f-4b4a-a732-defc758f6b08.png",
title: "柱状温度计",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647140031206-assets/web-upload/5b89cb4b-7760-4bc5-9c42-321e8be977d2.png",
title: "柱状横屏",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647140327438-assets/web-upload/103ea652-be67-44e8-9487-b0c19d309076.png",
title: "柱状滚动条",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647140690779-assets/web-upload/45ad31b3-34a6-4c69-afce-b42345211596.png",
title: "柱状标记线",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647140787383-assets/web-upload/61e9cc25-3554-4025-9acc-50ee934af53e.png",
title: "折线图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647141432488-assets/web-upload/a8aa8760-c795-49ed-85cd-69e2365d5f9c.png",
title: "曲线图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647142379943-assets/web-upload/86725be9-5570-470b-9434-6398fb2f16d9.png",
title: "折线滚动条",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647142796046-assets/web-upload/d9541d32-3e53-4d3c-8ceb-e4962e532883.png",
title: "曲线横滚动",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647142894339-assets/web-upload/5a9dd8d0-fda5-4f1e-a596-a90082abfa42.png",
title: "饼状图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647146724667-assets/web-upload/fc2be2b3-eb10-4c99-b12c-c9f6ef1ef648.png",
title: "玫瑰图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647142981691-assets/web-upload/831c2d86-2834-4a23-a2ef-e4596051bff5.png",
title: "圆环图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647147679340-assets/web-upload/0cbb4c33-80f7-4eff-82d4-c2ac18b166e4.png",
title: "圆环进度条",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647150225993-assets/web-upload/994fbc32-a193-454a-90b2-be7a3a702b83.png",
title: "圆弧进度条",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647150734710-assets/web-upload/1eeb9fb3-3f5f-4971-8a19-65867217e5bf.png",
title: "区域图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647150966872-assets/web-upload/4009704d-e4e7-4df4-992d-e68d99711997.png",
title: "混合图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647151102859-assets/web-upload/872a9716-3e60-4406-9597-111b4cccaac1.png",
title: "K线图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647153742104-assets/web-upload/770e4a06-481b-489d-ad4f-9c77d4ac04ea.png",
title: "漏斗图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647154447211-assets/web-upload/91b029d1-1088-4ffa-8cf6-80e9388a575c.png",
title: "时间轴",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647152261598-assets/web-upload/ffde98fa-d122-43b0-a93a-a27c64640ece.png",
title: "雷达图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647165288318-assets/web-upload/be2cad27-250b-4bf4-92cb-26c12cb98476.png",
title: "词云图",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647152261570-assets/web-upload/1d036592-079a-4aca-8dd5-1369c7c94f83.png",
title: "仪表盘",
},
{
url: "https://cdn.nlark.com/yuque/0/2022/png/280373/1647154285224-assets/web-upload/9bf3bdfc-2f65-4ecc-bfdf-4e3bcf9ad9f1.png",
title: "地图",
}
],
tuniaoData: [
{
title: 'UI设计',
icon: 'image-text-fill',
color: 'red',
value: '前往咨询'
},
{
title: '小程序',
icon: 'data-fill',
color: 'orange',
value: '前往咨询'
},
{
title: '网站开发',
icon: 'statistics-fill',
color: 'purple',
value: '前往咨询'
},
{
title: '其他业务',
icon: 'bankcard-fill',
color: 'blue',
value: '前往咨询'
}
],
navBarRectInfo: {},
navBarChangebaseLineHeight: 0,
navBarStyle: {
color:'#FFFFFF',
opacity: 1,
display: 'flex'
},
navBarBackgroundColor: 'rgba(255, 255, 255, 0)',
activeBgAnimation: {}
}
},
onReady() {
this.$nextTick(() => {
this.initNavBarRectInfo()
})
},
onPageScroll() {
this.updateNavBarRectInfo()
},
methods: {
// cardSwiper
cardSwiper(e) {
this.cardCur = e.detail.current
},
// resume
resume(e) {
this.cardCur2 = e.detail.current
},
// 初始化导航栏信息
async initNavBarRectInfo() {
const navBarRectInfo = await this._tGetRect('#navbar')
const pageTipsRectInfo = await this._tGetRect('#page_tips')
// console.log(navBarRectInfo, pageTipsRectInfo, navBarRectInfo?.top, pageTipsRectInfo?.top);
if (!navBarRectInfo.hasOwnProperty('top') || !pageTipsRectInfo.hasOwnProperty('top')) {
setTimeout(() => {
this.initNavBarRectInfo()
}, 10)
return
}
this.navBarRectInfo = {
top: navBarRectInfo.top
}
this.navBarChangebaseLineHeight = pageTipsRectInfo.top - navBarRectInfo.top
},
// 更新导航栏信息
updateNavBarRectInfo() {
this._tGetRect('#page_tips').then((res) => {
const top = res?.top || 0
if (!top) {
return
}
const differHeight = top - this.navBarRectInfo.top
const opacity = differHeight / this.navBarChangebaseLineHeight
if (opacity < 0) {
// this.navBarStyle.opacity = 1
// this.navBarStyle.display = 'flex'
this.navBarStyle.color = 'rgba(0, 0, 0, ${opacity})'
this.navBarBackgroundColor = `rgba(255, 255, 255, 1)`
} else {
// this.navBarStyle.opacity = 1 - opacity
// this.navBarStyle.display = 'flex'
this.navBarStyle.color = 'rgba(255, 255, 255, 1)'
this.navBarBackgroundColor = `rgba(255, 255, 255, ${1 - opacity})`
}
// console.log(top, differHeight, opacity);
})
},
// 跳转到图鸟UI
navTuniaoUI() {
uni.navigateToMiniProgram({
appId: 'wxf3d81a452b88ff4b'
})
},
}
}
</script>
<style lang="scss" scoped>
@import '@/static/css/templatePage/custom_nav_bar.scss';
.template-ucharts {
}
.icon-function {
position: relative;
z-index: 1;
margin: 20rpx 5rpx;
margin-top: -420rpx;
}
/* 轮播视觉差 start */
.card-swiper {
height: 600rpx !important;
}
.card-swiper swiper-item {
width: 750rpx !important;
left: 0rpx;
box-sizing: border-box;
// padding: 0rpx 30rpx 90rpx 30rpx;
overflow: initial;
}
.card-swiper swiper-item .swiper-item {
width: 100%;
display: block;
height: 100%;
transform: scale(1);
transition: all 0.2s ease-in 0s;
overflow: hidden;
}
.card-swiper swiper-item.cur .swiper-item {
transform: none;
transition: all 0.2s ease-in 0s;
}
.image-banner{
display: flex;
align-items: center;
justify-content: center;
}
.image-banner image{
width: 100%;
height: 100%;
}
/* 轮播指示点 start*/
.indication{
z-index: 9999;
width: 100%;
height: 36rpx;
position: absolute;
display:flex;
flex-direction:row;
align-items:center;
justify-content:center;
opacity: 0;
}
.spot{
background-color: #FFFFFF;
opacity: 0.6;
width: 10rpx;
height: 10rpx;
border-radius: 20rpx;
top: -60rpx;
margin: 0 8rpx !important;
position: relative;
}
.spot.active{
opacity: 1;
width: 30rpx;
background-color: #FFFFFF;
}
/* 简历推荐 start */
.card-swiper2 {
height: 420rpx !important;
overflow: hidden;
}
.card-swiper2 swiper-item {
width: 680rpx !important;
left: 30rpx;
box-sizing: border-box;
overflow: initial;
padding: 0 0rpx 40rpx 0;
}
.card-swiper2 swiper-item .swiper-item {
width: 100%;
display: block;
height: 100%;
// transform: scale(1);
// transition: transform 0.2s ease-out 0s;
}
.card-swiper2 swiper-item.cur .swiper-item {
// transform: scale(1);
}
.card-swiper2 swiper-item .swiper-item2 {
width: 100%;
display: block;
height: 50%;
border-radius: 50%;
transform: translate(480rpx, -300rpx) scale(0.9);
transition: transform 0.3s ease-out 0s;
}
.card-swiper2 swiper-item.cur .swiper-item2 {
transform: translate(510rpx, -320rpx) scale(0.9);
}
.card-swiper2 swiper-item .swiper-item-text {
width: 100%;
display: block;
height: 100%;
border-radius: 10rpx;
transform: translate(20rpx, -420rpx) scale(0.8);
transition: transform 0.6s ease-out 0s;
overflow: hidden;
}
.card-swiper2 swiper-item.cur .swiper-item-text {
transform: translate(20rpx, -450rpx) scale(0.9);
}
/* 底部tabbar假阴影 start*/
.bg-tabbar-shadow{
background-image: repeating-linear-gradient(to top, rgba(0,0,0,0.1) 10rpx, #FFFFFF , #FFFFFF);
position: fixed;
bottom: 0;
height: 450rpx;
width: 100vw;
z-index: -1;
}
/* 图标容器15 start */
.icon15 {
&__item {
width: 30%;
background-color: #FFFFFF;
border-radius: 10rpx;
padding: 30rpx;
margin: 20rpx 10rpx;
transform: scale(1);
transition: transform 0.3s linear;
transform-origin: center center;
&--icon {
width: 100rpx;
height: 100rpx;
font-size: 60rpx;
// border-radius: 50%;
margin-bottom: 0rpx;
position: relative;
z-index: 1;
&::after {
content: " ";
position: absolute;
z-index: -1;
width: 100%;
height: 100%;
left: 0;
bottom: 0;
border-radius: inherit;
opacity: 1;
transform: scale(1, 1);
background-size: 100% 100%;
}
}
}
}
/* 图标容器7 start */
.icon7 {
&__item {
width: 30%;
background-color: #FFFFFF;
border-radius: 10rpx;
padding: 10rpx;
margin: 20rpx 10rpx;
transform: scale(1);
transition: transform 0.3s linear;
transform-origin: center center;
&--icon {
width: 90rpx;
height: 90rpx;
font-size: 60rpx;
border-radius: 0;
margin-bottom: 18rpx;
position: relative;
z-index: 1;
}
}
}
/* 图标容器9 start */
.icon9 {
&__item {
width: 30%;
background-color: #FFFFFF;
border-radius: 10rpx;
transform: scale(1);
transition: transform 0.3s linear;
transform-origin: center center;
&--icon {
width: 80rpx;
height: 80rpx;
font-size: 50rpx;
border-radius: 50%;
margin-bottom: 18rpx;
position: relative;
z-index: 1;
&::after {
content: " ";
position: absolute;
z-index: -1;
width: 100%;
height: 100%;
left: 0;
bottom: 0;
border-radius: inherit;
opacity: 1;
transform: scale(1, 1);
background-size: 100% 100%;
background-image: url(https://resource.tuniaokj.com/images/cool_bg_image/icon_bg6.png);
}
}
}
}
/* 阴影 start*/
.health-shadow {
border-radius: 15rpx;
box-shadow: 0rpx 0rpx 50rpx 0rpx rgba(0, 0, 0, 0.07);
}
/* 自定义导航栏内容 start */
.custom-nav {
height: 100%;
&__back {
margin: auto 5rpx;
font-size: 40rpx;
margin-right: 10rpx;
margin-left: 30rpx;
flex-basis: 5%;
}
&__search {
flex-basis: 60%;
width: 100%;
height: 100%;
&__box {
width: 100%;
height: 70%;
padding: 10rpx 0;
margin: 0 30rpx;
border-radius: 60rpx 60rpx 0 60rpx;
font-size: 24rpx;
}
&__icon {
padding-right: 10rpx;
margin-left: 20rpx;
font-size: 30rpx;
}
&__text {
// color: #AAAAAA;
}
}
}
.logo-image{
width: 60rpx;
height: 60rpx;
position: relative;
}
.logo-pic{
background-size: cover;
background-repeat:no-repeat;
// background-attachment:fixed;
background-position:top;
border-radius: 50%;
}
/* 自定义导航栏内容 end */
/* 热门图片 start*/
.image-tuniao1{
padding: 164rpx 0rpx;
font-size: 40rpx;
font-weight: 300;
position: relative;
}
.image-tuniao2{
padding: 75rpx 0rpx;
font-size: 40rpx;
font-weight: 300;
position: relative;
}
.image-tuniao3{
padding: 90rpx 0rpx;
font-size: 40rpx;
font-weight: 300;
position: relative;
}
.image-pic{
background-size: cover;
background-repeat:no-repeat;
// background-attachment:fixed;
background-position:top;
border-radius: 10rpx;
}
/* 胶囊banner*/
.image-capsule{
padding: 100rpx 0rpx;
font-size: 40rpx;
font-weight: 300;
position: relative;
}
.image-piccapsule{
background-size: cover;
background-repeat:no-repeat;
// background-attachment:fixed;
background-position:top;
border-radius: 20rpx 20rpx 0 0;
}
/* 业务展示 start */
.tn-info {
&__container {
margin-top: 10rpx;
margin-bottom: 50rpx;
}
&__item {
width: 48%;
margin: 15rpx 0rpx;
padding: 40rpx 30rpx;
border-radius: 15rpx;
position: relative;
z-index: 1;
&::after {
content: " ";
position: absolute;
z-index: -1;
width: 100%;
height: 100%;
left: 0;
bottom: 0;
border-radius: inherit;
opacity: 1;
transform: scale(1, 1);
background-size: 100% 100%;
background-image: url(https://resource.tuniaokj.com/images/cool_bg_image/2.png);
}
&__left {
&--icon {
width: 80rpx;
height: 80rpx;
border-radius: 50%;
font-size: 40rpx;
margin-right: 20rpx;
position: relative;
z-index: 1;
&::after {
content: " ";
position: absolute;
z-index: -1;
width: 100%;
height: 100%;
left: 0;
bottom: 0;
border-radius: inherit;
opacity: 1;
transform: scale(1, 1);
background-size: 100% 100%;
background-image: url(https://resource.tuniaokj.com/images/cool_bg_image/icon_bg5.png);
}
}
&__content {
font-size: 25rpx;
&--data {
color: rgba(255,255,255,0.5);
margin-top: 5rpx;
// font-weight: bold;
}
}
}
&__right {
&--icon {
position: absolute;
right: 0rpx;
top: 50rpx;
font-size: 100rpx;
width: 108rpx;
height: 108rpx;
text-align: center;
line-height: 60rpx;
opacity: 0.15;
}
}
}
}
/* 业务展示 end */
/* 底部tabbar start*/
.footerfixed{
position: fixed;
width: 100%;
bottom: 0;
z-index: 999;
background-color: #FFFFFF;
box-shadow: 0rpx 0rpx 30rpx 0rpx rgba(0, 0, 0, 0.07);
}
.tabbar {
display: flex;
align-items: center;
min-height: 110rpx;
justify-content: space-between;
padding: 0;
height: calc(110rpx + env(safe-area-inset-bottom) / 2);
padding-bottom: calc(env(safe-area-inset-bottom) / 2);
}
.tabbar .action {
font-size: 22rpx;
position: relative;
flex: 1;
text-align: center;
padding: 0;
display: block;
height: auto;
line-height: 1;
margin: 0;
overflow: initial;
}
.bar-center{
animation: suspension 3s ease-in-out infinite;
}
@keyframes suspension {
0%, 100% {
transform: translateY(0);
}
50% {
transform: translateY(-0.8rem);
}
}
.tabbar .action .bar-icon {
width: 100rpx;
position: relative;
display: block;
height: auto;
margin: 0 auto 10rpx;
text-align: center;
font-size: 42rpx;
// line-height: 50rpx;
}
.tabbar .action .bar-icon image {
width: 50rpx;
height: 50rpx;
display: inline-block;
}
.tabbar .action .bar-circle {
position: relative;
display: block;
margin: 0rpx auto 0rpx;
text-align: center;
font-size: 52rpx;
line-height: 90rpx;
// background-color: #01BEFF;
width: 100rpx !important;
height: 100rpx !important;
overflow: hidden;
// border-radius: 50%;
// box-shadow: 0px 10px 30px rgba(70,23,129, 0.12),
// 0px -8px 40px rgba(255, 255, 255, 1),
// inset 0px -10px 10px rgba(70,23,129, 0.05),
// inset 0px 10px 20px rgba(255, 255, 255, 1);
// box-shadow: 0rpx 0rpx 20rpx 0rpx rgba(1, 190, 255, 0.5);
}
.tabbar .action .bar-circle image {
width: 100rpx;
height: 100rpx;
display: inline-block;
margin: 0rpx auto 0rpx;
}
/* 流星+悬浮 */
.nav-index-button {
animation: suspension 3s ease-in-out infinite;
z-index: 999999;
&__content {
position: absolute;
width: 100rpx;
height: 100rpx;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
&--icon {
width: 100rpx;
height: 100rpx;
font-size: 60rpx;
border-radius: 50%;
margin-bottom: 18rpx;
position: relative;
z-index: 1;
transform: scale(0.85);
&::after {
content: " ";
position: absolute;
z-index: -1;
width: 100%;
height: 100%;
left: 0;
bottom: 0;
border-radius: inherit;
opacity: 1;
transform: scale(1, 1);
background-size: 100% 100%;
// background-image: url(https://resource.tuniaokj.com/images/cool_bg_image/icon_bg6.png);
}
}
}
&__meteor {
position: absolute;
top: 50%;
left: 50%;
width: 100rpx;
height: 100rpx;
transform-style: preserve-3d;
transform: translate(-50%, -50%) rotateY(75deg) rotateZ(10deg);
&__wrapper {
width: 100rpx;
height: 100rpx;
transform-style: preserve-3d;
animation: spin 20s linear infinite;
}
&__item {
position: absolute;
width: 100rpx;
height: 100rpx;
border-radius: 1000rpx;
left: 0;
top: 0;
&--pic {
display: block;
width: 100%;
height: 100%;
background: url(https://resource.tuniaokj.com/images/cool_bg_image/arc1.png) no-repeat center center;
background-size: 100% 100%;
animation: arc 4s linear infinite;
}
}
}
}
@keyframes suspension {
0%, 100% {
transform: translateY(0);
}
50% {
transform: translateY(-0.6rem);
}
}
@keyframes spin {
0% {
transform: rotateX(0deg);
}
100% {
transform: rotateX(-360deg);
}
}
@keyframes arc {
to {
transform: rotate(360deg);
}
}
</style>