|
@@ -28,7 +28,7 @@
|
|
|
>
|
|
|
<template #default>
|
|
|
<view class="home-container">
|
|
|
- <!-- 下拉列表 开始 -->
|
|
|
+ <!-- 右侧弹窗 -->
|
|
|
<u-transition :show="dialogFlag" :duration="200" mode="fade">
|
|
|
<view class="transition" @click="rightButtonClick()">
|
|
|
<view class="transition-section" :style="{ top: proxy.$settingStore.barHightTop }">
|
|
@@ -44,14 +44,13 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
</u-transition>
|
|
|
- <!-- 下拉列表 结束 -->
|
|
|
|
|
|
- <!-- 轮播图 开始 -->
|
|
|
+ <!-- 轮播图 -->
|
|
|
<u-swiper v-if="swiperBool" :list="swiperList" :interval="swiperTime" indicatorMode="line" radius="0" height="160" indicator circular keyName="url" @click="swiperClick" @change="swiperChange">
|
|
|
</u-swiper>
|
|
|
-
|
|
|
<image v-if="!swiperBool" style="width: 100%; height: 160px" src="@/static/images/index/banner1.png"></image>
|
|
|
|
|
|
+ <!-- 天气 -->
|
|
|
<view class="app-common-notice bg-white radius shadow-default margin-lr-sm margin-bottom-sm" v-if="weatherData.length != 0">
|
|
|
<!-- <view class="info">
|
|
|
<view class="info-header">
|
|
@@ -64,9 +63,9 @@
|
|
|
<view class="weather radius">
|
|
|
<view class="weather-header">
|
|
|
<view class="iconfont ucicon-address icon"></view>
|
|
|
- <view style="margin: 0 15px 0 0">{{ weatherData[0].location || "上海" }}</view>
|
|
|
+ <view class="mr15">{{ weatherData[0].location || "上海" }}</view>
|
|
|
<view style="margin: 0 auto 0 0">今天</view>
|
|
|
- <view style="margin: 0 0 0 0">{{ weatherData[0].text || "未知" }}</view>
|
|
|
+ <view class="m0">{{ weatherData[0].text || "未知" }}</view>
|
|
|
</view>
|
|
|
<view class="weather-center">
|
|
|
<view class="temperature">{{ weatherData[0].today.low + "/" + weatherData[0].today.high || "0℃" }}</view>
|
|
@@ -75,37 +74,33 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
- <!-- 轮播图 结束 -->
|
|
|
-
|
|
|
- <!-- 宫格列表 -->
|
|
|
- <view class="section2 section bg-white margin-bottom-sm" v-if="recentlyUsed.length > 0">
|
|
|
- <view style="color: #000000; font-size: 14px; padding: 10px 10px 5px 10px">最近使用</view>
|
|
|
+ <!-- 最近使用宫格 -->
|
|
|
+ <view class="bg-white margin-bottom-sm" v-if="recentlyUsed.length > 0">
|
|
|
+ <view class="plr10 pt10 pb5" style="color: #000000; font-size: 14px">最近使用</view>
|
|
|
<view class="cu-list grid col-5 no-border">
|
|
|
<view class="cu-item justify-center align-center" @tap="navItemClick(item)" v-for="(item, index) in recentlyUsed.slice(0, 5)" :key="index">
|
|
|
<image :src="item.meta.icon" style="width: 40px; height: 40px"></image>
|
|
|
<!-- <view class="cu-tag badge" v-if="item.badge != 0">
|
|
|
- <block v-if="item.badge != 0">{{ item.badge > 99 ? "99+" : item.badge }}</block>
|
|
|
- </view> -->
|
|
|
+ <block v-if="item.badge != 0">{{ item.badge > 99 ? "99+" : item.badge }}</block>
|
|
|
+ </view> -->
|
|
|
<text style="font-size: 12px">{{ item.meta.title }}</text>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <!-- 宫格列表 end -->
|
|
|
|
|
|
- <!-- 宫格列表 -->
|
|
|
- <view class="section2 section bg-white">
|
|
|
- <view style="color: #000000; font-size: 14px; padding: 10px 10px 5px 10px">常用功能</view>
|
|
|
+ <!-- 常用功能宫格 -->
|
|
|
+ <view class="bg-white">
|
|
|
+ <view class="plr10 pt10 pb5" style="color: #000000; font-size: 14px">常用功能</view>
|
|
|
<view class="cu-list grid col-5 no-border">
|
|
|
<view class="cu-item justify-center align-center" @tap="navItemClick(item)" v-for="(item, index) in cuIconList" :key="index">
|
|
|
<image :src="item.meta.icon" style="width: 40px; height: 40px"></image>
|
|
|
<!-- <view class="cu-tag badge" v-if="item.badge != 0">
|
|
|
- <block v-if="item.badge != 0">{{ item.badge > 99 ? "99+" : item.badge }}</block>
|
|
|
- </view> -->
|
|
|
+ <block v-if="item.badge != 0">{{ item.badge > 99 ? "99+" : item.badge }}</block>
|
|
|
+ </view> -->
|
|
|
<text style="font-size: 12px">{{ item.meta.title }}</text>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <!-- 宫格列表 end -->
|
|
|
</view>
|
|
|
</template>
|
|
|
</oa-scroll>
|
|
@@ -114,16 +109,14 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import searchSelect from "@/components/searchSelect/searchSelect.vue";
|
|
|
-
|
|
|
-import * as jwx from "@/utils/jssdk.js"; //引入js sdk的封装
|
|
|
-
|
|
|
import { onReady, onLoad, onShow, onNavigationBarButtonTap, onPullDownRefresh, onReachBottom } from "@dcloudio/uni-app";
|
|
|
import { ref, onMounted, inject, shallowRef, reactive, getCurrentInstance, toRefs } from "vue";
|
|
|
import { getToken } from "@/utils/auth";
|
|
|
import { useStores, publicStores } from "@/store/modules/index";
|
|
|
|
|
|
import { scan_push, getHomePageData, getFunctionalModuleStatistics, getAppRouters, qrCodeSend, getMobileBanner } from "@/api/index";
|
|
|
+import searchSelect from "@/components/searchSelect/searchSelect.vue";
|
|
|
+import * as jwx from "@/utils/jssdk.js"; //引入js sdk的封装
|
|
|
|
|
|
const useStore = useStores();
|
|
|
const publicStore = publicStores(); //全局公共Store
|
|
@@ -369,9 +362,6 @@ function getMobileBannerApi() {
|
|
|
*/
|
|
|
function getAppRoutersData() {
|
|
|
getAppRouters().then((res) => {
|
|
|
- // res.data.forEach((el) => {
|
|
|
- // el.meta.icon = `/static/icons/index/${el.meta.icon}.png`;
|
|
|
- // });
|
|
|
cuIconList.value = res.data;
|
|
|
});
|
|
|
}
|
|
@@ -403,7 +393,7 @@ onShow(() => {
|
|
|
bottom: 0;
|
|
|
z-index: 1100;
|
|
|
|
|
|
- .transition-section {
|
|
|
+ &-section {
|
|
|
position: absolute;
|
|
|
top: 10px;
|
|
|
right: 15px;
|
|
@@ -411,36 +401,36 @@ onShow(() => {
|
|
|
border-radius: 10px;
|
|
|
box-shadow: 0px 0px 15px 0 rgba(0, 0, 0, 0.2);
|
|
|
|
|
|
- .transition-section-divider {
|
|
|
+ &-divider {
|
|
|
border-bottom: 0.5px rgba(0, 0, 0, 0.1) solid;
|
|
|
margin: 0 20px;
|
|
|
}
|
|
|
|
|
|
- .transition-section-content {
|
|
|
+ &-content {
|
|
|
display: flex;
|
|
|
padding: 15px 20px;
|
|
|
|
|
|
- .transition-section-content-icon {
|
|
|
+ &-icon {
|
|
|
font-size: 18px;
|
|
|
color: #000;
|
|
|
}
|
|
|
|
|
|
- .transition-section-content-text {
|
|
|
+ &-text {
|
|
|
margin: 0 20px;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .transition-section-content:first-child {
|
|
|
+ &-content:first-child {
|
|
|
padding-top: 15px;
|
|
|
border-radius: 10px 10px 0 0;
|
|
|
}
|
|
|
|
|
|
- .transition-section-content:last-child {
|
|
|
+ &-content:last-child {
|
|
|
padding-bottom: 15px;
|
|
|
border-radius: 0 0 10px 10px;
|
|
|
}
|
|
|
|
|
|
- .transition-section-content:hover {
|
|
|
+ &-content:hover {
|
|
|
// transform: 3s;
|
|
|
// transition: all 600ms cubic-bezier(0.3, 1, 0.2, 1);
|
|
|
transition: all 3s cubic-bezier(0.7, -0.5, 0.2, 2);
|