Browse Source

demo完成提测版

dev_230517
刘洪超 2 years ago
parent
commit
b995659c59
  1. BIN
      public/assets/imgs/device-detail/normal-mode/loop_pur@2x.png
  2. BIN
      public/assets/imgs/device-detail/normal-mode/loop_pur_select@2x.png
  3. BIN
      public/assets/imgs/device-detail/normal-mode/save_air@2x.png
  4. BIN
      public/assets/imgs/device-detail/normal-mode/save_air_select@2x.png
  5. BIN
      public/assets/imgs/device-detail/normal-mode/shut_down_loop_pur@2x.png
  6. BIN
      public/assets/imgs/device-detail/normal-mode/shut_down_save_air@2x.png
  7. BIN
      public/assets/imgs/device-detail/normal-mode/shut_down_smart_auto@2x.png
  8. BIN
      public/assets/imgs/device-detail/normal-mode/shut_down_ventilation@2x.png
  9. BIN
      public/assets/imgs/device-detail/normal-mode/smart_auto@2x.png
  10. BIN
      public/assets/imgs/device-detail/normal-mode/smart_auto_select@2x.png
  11. BIN
      public/assets/imgs/device-detail/normal-mode/ventilation@2x.png
  12. BIN
      public/assets/imgs/device-detail/normal-mode/ventilation_select@2x.png
  13. BIN
      public/assets/imgs/show/select_time_bg.png
  14. BIN
      src/assets/imgs/show/select_time_bg.png
  15. 23
      src/styles/framework/base/flexbox.scss
  16. 118
      src/view/data-center/data-center-show.vue
  17. 30
      src/view/data-center/data-center.vue
  18. 8
      src/view/device-detail/device-detail.vue
  19. 2
      src/view/device-detail/fresh-air.vue
  20. 16
      src/view/device-detail/mode/normal.vue
  21. 28
      src/view/device-detail/whole-setting.vue
  22. 6
      src/view/message/messageDetail.vue
  23. 8
      src/view/tabs/device-control.vue
  24. 37
      src/view/tabs/home-screen.vue
  25. 65
      src/view/timing/timing-select-time.vue
  26. 2
      src/view/ui/env-select.vue

BIN
public/assets/imgs/device-detail/normal-mode/loop_pur@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

BIN
public/assets/imgs/device-detail/normal-mode/loop_pur_select@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

BIN
public/assets/imgs/device-detail/normal-mode/save_air@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
public/assets/imgs/device-detail/normal-mode/save_air_select@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

BIN
public/assets/imgs/device-detail/normal-mode/shut_down_loop_pur@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
public/assets/imgs/device-detail/normal-mode/shut_down_save_air@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

BIN
public/assets/imgs/device-detail/normal-mode/shut_down_smart_auto@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
public/assets/imgs/device-detail/normal-mode/shut_down_ventilation@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
public/assets/imgs/device-detail/normal-mode/smart_auto@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

BIN
public/assets/imgs/device-detail/normal-mode/smart_auto_select@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

BIN
public/assets/imgs/device-detail/normal-mode/ventilation@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
public/assets/imgs/device-detail/normal-mode/ventilation_select@2x.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

BIN
public/assets/imgs/show/select_time_bg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

BIN
src/assets/imgs/show/select_time_bg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

23
src/styles/framework/base/flexbox.scss

@ -265,6 +265,11 @@ Flex, Grow, & Shrink 待确定
padding: 24px; padding: 24px;
flex-wrap: wrap; flex-wrap: wrap;
} }
//单行列表父布局
.zhp-item-one-bg {
display: flex;
flex-wrap: wrap;
}
//智慧屏背景 //智慧屏背景
.base-bg { .base-bg {
@ -371,7 +376,11 @@ Flex, Grow, & Shrink 待确定
font-size: 24px; font-size: 24px;
font-weight: 400; font-weight: 400;
} }
.zhp-text-24-white {
color: #fff;
font-size: 24px;
font-weight: 400;
}
.zhp-text-28-white { .zhp-text-28-white {
color: #fff; color: #fff;
font-size: 28px; font-size: 28px;
@ -474,4 +483,16 @@ Flex, Grow, & Shrink 待确定
.margin-top-30 { .margin-top-30 {
margin-top: 30px; margin-top: 30px;
} }
.margin-top-34 {
margin-top: 34px;
}
.margin-bottom-20 {
margin-bottom: 20px;
}
.margin-bottom-26 {
margin-bottom: 26px;
}
.margin-bottom-34 {
margin-bottom: 34px;
}
} }

118
src/view/data-center/data-center-show.vue

@ -1,9 +1,15 @@
<template> <template>
<div class="base-bg"> <div class="base-bg">
<div class="zhp-title"> <div class="zhp-title">
<img src="@/assets/imgs/show/back.png" class="leftImg" @click="router.back()" /> <img
src="@/assets/imgs/show/back.png"
class="leftImg"
@click="router.back()"
/>
<div class="right-select"> <div class="right-select">
<div class="zhp-text-30-white">空气盒子</div> <div class="zhp-text-30-white" @click="onShowOver">
{{ isKt==1 ? "客厅空调" : "空气盒子" }}
</div>
<img <img
class="zhp-img-30 margin-left-2" class="zhp-img-30 margin-left-2"
src="@/assets/imgs/show/down.png" src="@/assets/imgs/show/down.png"
@ -12,6 +18,37 @@
<div class="zhp-title-text">{{ titleText }}</div> <div class="zhp-title-text">{{ titleText }}</div>
</div> </div>
<img class="show-img" :src="getImgSrc(showImg)" /> <img class="show-img" :src="getImgSrc(showImg)" />
<van-overlay :show="showOver" @click="onShowOver">
<div class="wrapper">
<div class="block">
<div class="zhp-item-one-bg" style="justify-content: center">
<div class="zhp-vertical">
<div class="zhp-text-24-white margin-top-34 margin-bottom-26">
{{ isKt==1 ? "请选择空调" : "请选择" }}
</div>
<div v-for="(item, i) in isKt == 1 ? ktList : kqList" :key="i">
<div class="zhp-vertical">
<div class="data-center-line margin-bottom-20"></div>
<div class="data-center-item-bg margin-bottom-20">
<div class="zhp-text-28-white">
{{ item.name }}
</div>
<img
class="selectImg"
:src="
item.selectState
? getImgSrc('/assets/imgs/show/icon_check.png')
: getImgSrc('/assets/imgs/show/icon_nomor.png')
"
/>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</van-overlay>
</div> </div>
</template> </template>
@ -22,9 +59,13 @@ import router from "@/router";
const getImgSrc = $commonService.$imgService.getImgSrc; const getImgSrc = $commonService.$imgService.getImgSrc;
let titleText = ref(""); const titleText = ref("");
let showImg = ref(""); const showImg = ref("");
const showOver = ref(false);
/**
* 是否为空调
*/
const isKt = ref(1);
onBeforeMount(() => { onBeforeMount(() => {
const query: any = router.currentRoute.value.query; const query: any = router.currentRoute.value.query;
if (query) { if (query) {
@ -37,8 +78,41 @@ onActivated(() => {
if (query) { if (query) {
titleText.value = query.titleText; titleText.value = query.titleText;
showImg.value = query.showImg; showImg.value = query.showImg;
isKt.value = query.isKt;
} }
}); });
const kqList = ref([
{
selectState: true,
name: "空气盒子",
id: 1,
},
{
selectState: false,
name: "全热新风",
id: 2,
},
]);
const ktList = ref([
{
selectState: true,
name: "客厅空调",
id: 1,
},
{
selectState: false,
name: "卧室空调",
id: 2,
},
{
selectState: false,
name: "儿童房空调",
id: 3,
},
]);
const onShowOver = () => {
showOver.value = !showOver.value;
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -48,4 +122,38 @@ onActivated(() => {
align-items: center; align-items: center;
display: flex; display: flex;
} }
.wrapper {
position: relative;
display: flex;
width: 100%;
height: 100%;
}
.block {
position: absolute;
right: 0;
width: 312px;
height: 100%;
background-color: #20252e;
}
.selectImg {
width: 60px;
height: 60px;
}
.data-center-item-bg {
width: 252px;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
}
.data-center-line {
width: 252px;
height: 1px;
background-color: rgba($color: #fff, $alpha: 0.2);
}
</style> </style>

30
src/view/data-center/data-center.vue

@ -44,10 +44,11 @@ const centerList = ref([
path: "/dataCenterShow", path: "/dataCenterShow",
query: { query: {
titleText: "低碳节能", titleText: "低碳节能",
showImg: "/assets/imgs/show/datacenter_tb_nhtj.png" showImg: "/assets/imgs/show/datacenter_tb_nhtj.png",
} isKt: 1,
},
}); });
} },
}, },
{ {
isSelect: false, isSelect: false,
@ -58,10 +59,11 @@ const centerList = ref([
path: "/dataCenterShow", path: "/dataCenterShow",
query: { query: {
titleText: "温度曲线", titleText: "温度曲线",
showImg: "/assets/imgs/show/datacenter_tb_wdbh.png" showImg: "/assets/imgs/show/datacenter_tb_wdbh.png",
} isKt: 1,
},
}); });
} },
}, },
{ {
isSelect: false, isSelect: false,
@ -72,10 +74,11 @@ const centerList = ref([
path: "/dataCenterShow", path: "/dataCenterShow",
query: { query: {
titleText: "空气质量", titleText: "空气质量",
showImg: "/assets/imgs/show/datacenter_tb_kqzl.png" showImg: "/assets/imgs/show/datacenter_tb_kqzl.png",
} isKt: 0,
},
}); });
} },
}, },
{ {
isSelect: false, isSelect: false,
@ -86,11 +89,12 @@ const centerList = ref([
path: "/dataCenterShow", path: "/dataCenterShow",
query: { query: {
titleText: "运转状态", titleText: "运转状态",
showImg: "/assets/imgs/show/datacenter_tb_wdbh.png" showImg: "/assets/imgs/show/datacenter_tb_wdbh.png",
} isKt: 1,
},
}); });
} },
} },
]); ]);
</script> </script>

8
src/view/device-detail/device-detail.vue

@ -49,6 +49,8 @@
:show-wind-dire="showWindDire" :show-wind-dire="showWindDire"
:device-type="deviceType" :device-type="deviceType"
:d-mode="dMode" :d-mode="dMode"
:d-tem="tem"
:d-hum="hum"
@change-bg="changeBg($event)" @change-bg="changeBg($event)"
@change-switch="changeSwitch($event)" @change-switch="changeSwitch($event)"
></NormalMode> ></NormalMode>
@ -124,6 +126,10 @@ const showWindDire = ref(true);
const deviceType = ref(); const deviceType = ref();
/** 当前选中的模式 */ /** 当前选中的模式 */
const dMode = ref(1); const dMode = ref(1);
/** 温度 */
const tem = ref(22);
/** 湿度 */
const hum = ref(50);
onActivated(() => { onActivated(() => {
// dom v-if // dom v-if
@ -134,6 +140,8 @@ onActivated(() => {
ifRun.value = query.openFlg === "true" ? true : false; ifRun.value = query.openFlg === "true" ? true : false;
dMode.value = query.dMode; dMode.value = query.dMode;
deviceType.value = query.deviceType; deviceType.value = query.deviceType;
tem.value = query.tem;
hum.value = query.hum;
// mode.value=query.mode; // mode.value=query.mode;
if (query.deviceType === "4E") { if (query.deviceType === "4E") {
showTabs.value = false; showTabs.value = false;

2
src/view/device-detail/fresh-air.vue

@ -262,7 +262,7 @@ const changeSwitch = () => {
} }
.setting-control { .setting-control {
margin-top: 43px; margin-top: 13px;
padding: 0 64px; padding: 0 64px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;

16
src/view/device-detail/mode/normal.vue

@ -133,24 +133,28 @@ const props = defineProps<{
deviceType: string; deviceType: string;
/**默认模式*/ /**默认模式*/
dMode: any; dMode: any;
/**温度*/
dTem: number;
/**湿度*/
dHum: number;
}>(); }>();
const { ifRun } = toRefs(props); const { ifRun } = toRefs(props);
/** 温度配置 */ /** 温度配置 */
const tempOptions = ref({ const tempOptions = ref({
titleName: "室内", titleName: "室内",
value: 25, value: props.dTem,
unit: "℃", unit: "℃",
min: 16, min: 22,
max: 32, max: 60,
current: "temp" current: "temp"
}); });
/** 湿度配置 */ /** 湿度配置 */
const humiOptions = ref({ const humiOptions = ref({
titleName: "湿度", titleName: "湿度",
value: 76, value: props.dHum,
unit: "%", unit: "%",
min: 35, min: 22,
max: 90, max: 60,
current: "humi" current: "humi"
}); });
/** 当前展示可操作性的配置 */ /** 当前展示可操作性的配置 */

28
src/view/device-detail/whole-setting.vue

@ -100,8 +100,8 @@ import { getCurrentInstance, onActivated, onBeforeMount, ref } from "vue";
import router from "@/router"; import router from "@/router";
const isAuto = ref(true); const isAuto = ref(true);
const tem = ref(23); const tem = ref(22);
const hum = ref(56); const hum = ref(50);
const { proxy } = getCurrentInstance() as any; const { proxy } = getCurrentInstance() as any;
const queryType = ref(1); const queryType = ref(1);
@ -109,30 +109,11 @@ onActivated(() => {
const query: any = router.currentRoute.value.query; const query: any = router.currentRoute.value.query;
if (query) { if (query) {
queryType.value = query.type; queryType.value = query.type;
setData(); tem.value = query.tem;
hum.value = query.hum;
} }
}); });
const setData = () => {
switch (queryType.value) {
case 1: //
tem.value = 24;
hum.value = 50;
break;
case 2: //
tem.value = 26;
hum.value = 60;
break;
case 3: //
tem.value = 24;
hum.value = 60;
break;
case 4: //
tem.value = 22;
hum.value = 50;
break;
}
};
/** /**
* 全屋设定Event通知值变化 * 全屋设定Event通知值变化
*/ */
@ -173,7 +154,6 @@ const openAuto = () => {
isAuto.value = !isAuto.value; isAuto.value = !isAuto.value;
if (isAuto.value) { if (isAuto.value) {
// //
setData();
} }
}; };
</script> </script>

6
src/view/message/messageDetail.vue

@ -18,6 +18,7 @@
<script lang="ts" setup> <script lang="ts" setup>
import router from "@/router"; import router from "@/router";
import { onActivated, ref } from "vue"; import { onActivated, ref } from "vue";
let title = ref(""); let title = ref("");
let time = ref(""); let time = ref("");
let content = ref(""); let content = ref("");
@ -28,7 +29,7 @@ onActivated(()=>{
time.value = query.time; time.value = query.time;
content.value = query.content; content.value = query.content;
} }
}) });
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@ -38,11 +39,12 @@ onActivated(()=>{
border-radius: 8px; border-radius: 8px;
background-origin: border-box; background-origin: border-box;
display: flex; display: flex;
height: 100vh; height: 580px;
padding: 24px 29px 29px 24px; padding: 24px 29px 29px 24px;
margin-left: 24px; margin-left: 24px;
margin-right: 24px; margin-right: 24px;
} }
.message-title { .message-title {
color: white; color: white;
font-weight: 500; font-weight: 500;

8
src/view/tabs/device-control.vue

@ -102,8 +102,8 @@ import { Toast } from "vant";
const { proxy } = getCurrentInstance() as any; const { proxy } = getCurrentInstance() as any;
/** 当前选中的模式 */ /** 当前选中的模式 */
const mode = ref(1); // const mode = ref(1); //
const tem = ref("23"); // const tem = ref("22"); //
const hum = ref("56"); //湿 const hum = ref("50"); //湿
const deviceList: any = ref<any[]>([]); const deviceList: any = ref<any[]>([]);
onBeforeMount(() => { onBeforeMount(() => {
@ -215,7 +215,9 @@ const goToDetail = (item: any) => {
openFlg: item.openFlg, openFlg: item.openFlg,
deviceType: item.deviceType, deviceType: item.deviceType,
smartMode: item.smartMode, smartMode: item.smartMode,
dMode: mode.value dMode: mode.value,
tem: tem.value,
hum: hum.value
} }
}); });
} }

37
src/view/tabs/home-screen.vue

@ -121,7 +121,7 @@ import {
onUnmounted, onUnmounted,
onActivated, onActivated,
getCurrentInstance, getCurrentInstance,
onBeforeMount onBeforeMount,
} from "vue"; } from "vue";
import router from "@/router"; import router from "@/router";
import { CountTo } from "vue3-count-to"; import { CountTo } from "vue3-count-to";
@ -166,10 +166,10 @@ const showNumScoll = ref(false);
/** 时间长按定时器 */ /** 时间长按定时器 */
const timePushTimer: any = ref(null); const timePushTimer: any = ref(null);
const { proxy } = getCurrentInstance() as any; const { proxy } = getCurrentInstance() as any;
const tem = ref(23); const tem = ref(22);
const hum = ref(56); const hum = ref(50);
const startTem = ref(23); const startTem = ref(22);
const startHum = ref(56); const startHum = ref(50);
const seasonName = ref("雪天"); const seasonName = ref("雪天");
const seasonImg = ref("/assets/imgs/show/home_xuetian.png"); const seasonImg = ref("/assets/imgs/show/home_xuetian.png");
const seasonTem = ref(-10); const seasonTem = ref(-10);
@ -186,27 +186,44 @@ onBeforeMount(() => {
const setType = (type: any) => { const setType = (type: any) => {
currentType.value = type; currentType.value = type;
switch (currentType.value) { switch (currentType.value) {
case 1: // case 1: //
seasonName.value = "多云"; seasonName.value = "晴天";
seasonTem.value = 26; seasonTem.value = 26;
tem.value = 24;
hum.value = 50;
startTem.value = 24;
startHum.value = 50;
seasonImg.value = "/assets/imgs/show/home_duoyun.png"; seasonImg.value = "/assets/imgs/show/home_duoyun.png";
break; break;
case 2: // case 2: //
seasonName.value = "晴天"; seasonName.value = "晴天";
seasonTem.value = 32; seasonTem.value = 32;
tem.value = 26;
hum.value = 60;
startTem.value = 26;
startHum.value = 60;
seasonImg.value = "/assets/imgs/show/home_qingtian.png"; seasonImg.value = "/assets/imgs/show/home_qingtian.png";
break; break;
case 3: // case 3: //
seasonName.value = "雨天"; seasonName.value = "雨天";
seasonTem.value = 16; seasonTem.value = 16;
tem.value = 24;
hum.value = 60;
startTem.value = 24;
startHum.value = 60;
seasonImg.value = "/assets/imgs/show/home_yutian.png"; seasonImg.value = "/assets/imgs/show/home_yutian.png";
break; break;
case 4: // case 4: //
seasonName.value = "雪天"; seasonName.value = "雪天";
seasonTem.value = -10; seasonTem.value = -10;
tem.value = 22;
hum.value = 50;
startTem.value = 22;
startHum.value = 50;
seasonImg.value = "/assets/imgs/show/home_xuetian.png"; seasonImg.value = "/assets/imgs/show/home_xuetian.png";
break; break;
} }
proxy.$eventBusService.emit("queryData", { tem: tem.value, hum: hum.value });
}; };
const queryData = (data: any) => { const queryData = (data: any) => {
tem.value = data.tem; tem.value = data.tem;
@ -246,8 +263,10 @@ const wholeSetting = () => {
router.push({ router.push({
path: "/wholeSetting", path: "/wholeSetting",
query: { query: {
type: currentType.value type: currentType.value,
} tem: tem.value,
hum: hum.value,
},
}); });
}; };

65
src/view/timing/timing-select-time.vue

@ -1,7 +1,8 @@
<template> <template>
<div class="base-bg" style="align-items: center; display: flex"> <div class="base-bg" style="align-items: center; display: flex">
<div class="timeBg margin-top-30"> <div class="timeBg margin-top-30">
<div class="swiper swiper-container" style="height: 100px"> <img class="selectedBg" src="@/assets/imgs/show/select_time_bg.png" />
<div class="swiper swiper-container" style="height: 150px">
<div class="swiper-wrapper"> <div class="swiper-wrapper">
<div v-for="(item, i) in timeList" :key="i" class="swiper-slide"> <div v-for="(item, i) in timeList" :key="i" class="swiper-slide">
<div class="swiper-item"> <div class="swiper-item">
@ -26,11 +27,12 @@ import { useRouter } from "vue-router";
import { getCurrentInstance, onMounted, ref } from "vue"; import { getCurrentInstance, onMounted, ref } from "vue";
import { Toast } from "vant"; import { Toast } from "vant";
import { Swiper } from "swiper"; import { Swiper } from "swiper";
let mySwiper: Swiper; // swiper let mySwiper: Swiper; // swiper
const router = useRouter(); const router = useRouter();
const timeMode = ref("1"); const timeMode = ref("1");
const { proxy } = getCurrentInstance() as any; const { proxy } = getCurrentInstance() as any;
const time = ref("0.5");
onMounted(() => { onMounted(() => {
initSwiper(); initSwiper();
}); });
@ -50,23 +52,20 @@ const initSwiper = () => {
observeParents: true, observeParents: true,
initialSlide: currentModeIndex, // initialSlide: currentModeIndex, //
on: { on: {
touchStart: () => {}, touchStart: () => {
touchMove: () => {},
slideChangeTransitionEnd: () => {
// mySwiper &&
// emit("changeSmartMode", timeList.value[mySwiper.realIndex].id);
// nextTick(() => {
// getShowImg();
// });
}, },
touchMove: () => {
}, },
slideChangeTransitionEnd: () => {
time.value = timeList.value[mySwiper.realIndex].text;
}
}
}); });
}; };
const onSelectClick = (sure: boolean) => { const onSelectClick = (sure: boolean) => {
router.back(); router.back();
if (sure) { if (sure) {
const time = 0.5; proxy.$eventBusService.emit("selectTimeEvent", time.value);
proxy.$eventBusService.emit("selectTimeEvent", time);
} }
}; };
@ -79,7 +78,7 @@ const timeList = ref<any[]>([
{ text: "3.0", id: "6" }, { text: "3.0", id: "6" },
{ text: "3.5", id: "7" }, { text: "3.5", id: "7" },
{ text: "4.0", id: "8" }, { text: "4.0", id: "8" },
{ text: "4.5", id: "9" }, { text: "4.5", id: "9" }
]); ]);
const onConfirm = ({ selectedValues }: { selectedValues: any }) => { const onConfirm = ({ selectedValues }: { selectedValues: any }) => {
@ -93,26 +92,30 @@ const onCancel = () => Toast("取消");
<style lang="scss" scoped> <style lang="scss" scoped>
.timeBg { .timeBg {
display: flex;
width: 672px; width: 672px;
height: 520px; height: 520px;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
background-color: rgba($color: #a1b8e6, $alpha: 0.08); background-color: rgba($color: #a1b8e6, $alpha: 0.08);
} }
.selectedBg {
position: fixed;
width: 100%;
height: 104px;
}
.swiper-item { .swiper-item {
font-size: 60px; font-size: 60px;
width: 65px; width: 65px;
text-align: center; text-align: center;
} }
.smart-wrapper {
width: 100%;
height: 100%;
position: relative;
.swiper-container { .swiper-container {
position: relative; position: relative;
width: 100%; width: 100%;
height: 426px; height: 253px;
.select-wrapper { .select-wrapper {
position: absolute; position: absolute;
@ -127,5 +130,31 @@ const onCancel = () => Toast("取消");
} }
} }
} }
.swiper-slide {
text-align: center;
display: flex;
justify-content: center;
align-items: center;
transition: 300ms;
transform: scale(0.6);
color: rgba($color: #FFF, $alpha: .2);
}
.swiper-slide-active, .swiper-slide-duplicate-active {
transform: scale(1);
color: white;
margin-bottom: 20px;
}
.swiper-slide-prev, .swiper-slide-next {
transform: scale(0.75);
color: rgba($color: #FFF, $alpha: .4);
}
.swiper-item {
font-size: 72px;
width: 72px;
text-align: center;
} }
</style> </style>

2
src/view/ui/env-select.vue

@ -44,7 +44,7 @@ const seasonList = ref([
{ {
id: 1, id: 1,
tem: "26", tem: "26",
season: "季", season: "季",
hum: 0 hum: 0
}, },
{ {

Loading…
Cancel
Save