ts_aimz_uni/App.vue
2025-06-20 18:06:49 +08:00

615 lines
16 KiB
Vue

<script>
export default {
onLaunch: function() {
console.log('App Launch')
},
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
}
}
</script>
<style lang="scss">
/*每个页面公共css */
@import "./common/style/icons.css";
@import "./uni.scss";
page {
background: linear-gradient(to bottom, $bg-top-color, $bg-bottom-color);
min-height: 100vh;
background-attachment: fixed;
}
.page-container {
display: flex;
flex-direction: column;
padding: 30rpx;
}
::-webkit-scrollbar {
width: 0;
height: 0;
color: transparent;
}
/* 自定义导航栏容器 */
.custom-navbar {
display: flex;
align-items: center;
background-color: transparent;
}
/* 标题 */
.navbar-title {
font-size: 22px;
font-weight: bold;
}
/***End***/
//自定义checkbox样式
/* #ifdef MP-BAIDU */
// 自定义checkbox radio样式
swan-checkbox .swan-checkbox-input {
border-radius: 50% !important;
width: 32rpx !important;
background-color: transparent !important;
height: 32rpx !important;
border: 2rpx solid $primary-color !important;
font-size: 28rpx !important;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(1)
}
swan-radio .swan-radio-input .swan-radio-input-border {
border: 1rpx solid $primary-color !important;
}
swan-checkbox[checked=true] .swan-checkbox-input {
border: none !important;
background: transparent !important;
border: 2rpx solid $primary-color !important
}
swan-checkbox[checked] .swan-checkbox-input:after {
display: block !important;
width: 20rpx !important;
height: 20rpx !important;
color: #fff !important;
border-radius: 50% !important;
background: $primary-color !important;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(1)
}
/* 自定义radio样式 */
radio .swan-radio-input {
border-radius: 50% !important;
width: 32rpx !important;
height: 32rpx !important;
border: 1rpx solid $primary-color !important;
font-size: 28rpx !important;
background-color: transparent !important;
}
radio .swan-radio-input.swan-radio-input-checked .swan-radio-input-border {
background: transparent !important;
border: 1rpx solid $primary-color !important;
}
radio .swan-radio-input.swan-radio-input-checked .swan-radio-input-button {
background: $primary-color !important;
width: 15rpx !important;
height: 15rpx !important;
}
/* #endif */
/* #ifdef H5 */
::v-deep .uni-checkbox-input svg {
background-color: $primary-color !important;
border-color: $primary-color !important;
background-clip: content-box !important;
padding: 6rpx !important;
box-sizing: border-box;
border-radius: 50%;
font-size: 24rpx !important;
width: 24rpx;
height: 24rpx;
}
::v-deep .uni-checkbox-input svg path {
fill: $primary-color !important;
width: 24rpx !important;
height: 24rpx !important;
font-size: 24rpx !important;
}
::v-deep .uni-checkbox-input {
font-size: 24rpx !important;
width: 24rpx !important;
height: 24rpx !important;
border-radius: 50% !important;
background-color: transparent !important;
border-color: $primary-color !important;
}
::v-deep .uni-checkbox-wrapper {
font-size: 24rpx !important;
font-weight: normal;
color: $text-color;
}
// 自定义radio样式
::v-deep .uni-radio-input svg {
background-color: $primary-color !important;
border-color: $primary-color !important;
background-clip: content-box !important;
padding: 6rpx !important;
box-sizing: border-box;
border-radius: 50%;
font-size: 24rpx !important;
width: 24rpx;
height: 24rpx;
}
::v-deep .uni-radio-input svg path {
fill: $primary-color !important;
width: 24rpx !important;
height: 24rpx !important;
font-size: 24rpx !important;
}
::v-deep .uni-radio-input {
font-size: 24rpx !important;
width: 24rpx !important;
height: 24rpx !important;
border-radius: 50% !important;
background-color: white !important;
border-color: $primary-color !important;
}
::v-deep .uni-radio-wrapper {
font-size: 24rpx !important;
font-weight: normal;
color: $text-color;
}
/* #endif */
.mt-10 {
margin-top: 10rpx;
}
.mt-20 {
margin-top: 20rpx;
}
.mr-10 {
margin-right: 10rpx;
}
.ml-5 {
margin-left: 5rpx;
}
.star::after {
content: "*";
color: $red-color;
margin-left: 6rpx;
}
.gray-star::after {
content: '*';
color: $text-gray-hint-color;
margin-left: 6rpx;
}
.bottom-footer {
position: fixed;
bottom: 0rpx;
left: 0rpx;
display: flex;
flex-direction: column;
background-color: white;
padding-bottom: 40rpx;
align-items: center;
width: 100%;
}
.bottom-fixed-footer {
position: fixed;
bottom: 0rpx;
left: 0rpx;
background-color: $white-color;
display: flex;
flex-direction: column;
padding: $page-padding $page-padding 50rpx;
width: 100%;
box-sizing: border-box;
z-index: 9;
}
.bottom-btn-green {
background-color: $btn-green-color;
color: white;
font-size: 28rpx;
height: 80rpx;
line-height: 80rpx;
border-radius: 5px;
text-align: center;
}
.bottom-btn-green:active {
background-color: $btn-green-color-active;
}
.bottom-btn-primary {
background-color: $primary-color;
color: white;
font-size: 28rpx;
height: 70rpx;
line-height: 70rpx;
border-radius: 5px;
text-align: center;
}
.bottom-btn-primary:active {
background-color: $primary-color-active;
}
.bottom-btn-blue {
background-color: $btn-blue-color;
color: $white-color;
font-size: 32rpx;
height: 80rpx;
line-height: 80rpx;
border-radius: 5rpx;
text-align: center;
}
.bottom-btn-gray {
background-color: $gray-color-light;
color: $text-brown-color;
font-size: 32rpx;
height: 80rpx;
line-height: 80rpx;
border-radius: 5rpx;
text-align: center;
}
.bottom-btn-blue:active {
background-color: $btn-blue-color-active;
color: $white-color;
}
.bottom-btn-blue.active {
background-color: $gray-bg-color;
color: $text-brown-color;
}
.ml-10 {
margin-left: 10rpx;
}
.ml-20 {
margin-left: 20rpx;
}
.mb-10 {
margin-bottom: 10rpx;
}
.mb-20 {
margin-bottom: 20rpx;
}
.mt-40 {
margin-top: 40rpx;
}
.mt-160 {
margin-top: 160rpx !important;
}
.mt-60 {
margin-top: 60rpx;
}
.mr-20 {
margin-right: 20rpx;
}
.mr-40 {
margin-right: 40rpx;
}
.ml-40 {
margin-left: 40rpx;
}
.mb-40 {
margin-bottom: 40rpx;
}
.mg {
margin: 10rpx;
}
.pd {
padding: 10rpx;
}
.mg-20 {
margin: 20rpx;
}
.mg-40 {
margin: 40rpx;
}
.pd-20 {
padding: 20rpx;
}
.pd-40 {
padding: 40rpx;
}
.border-left {
border-top-left-radius: 5rpx;
border-bottom-left-radius: 5rpx;
}
.border-right {
border-top-right-radius: 5rpx;
border-bottom-right-radius: 5rpx;
}
.divider-v {
width: 95%;
height: 1rpx;
background-color: $divider-color;
align-self: center;
}
.divider-h {
width: 1px;
height: 10px;
background-color: $divider-color;
padding: 0px 1px;
margin-left: 10px;
align-self: center;
}
.divider-h-white {
width: 1rpx;
height: 20rpx;
background-color: $primary-color-active;
padding: 0rpx 1rpx;
align-self: center;
margin-left: 20rpx;
}
.divider-v-100 {
height: 1rpx;
background-color: $divider-color;
width: 100%;
}
.single-line {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.single-line-front {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
direction: rtl;
text-align: left;
}
.multiple-3-ellipsis {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
}
.multiple-2-ellipsis {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
overflow: hidden;
}
.size-16 {
height: 16rpx;
height: 16rpx;
}
.size-32 {
width: 32rpx;
height: 32rpx;
}
.size-48 {
width: 48rpx;
height: 48rpx;
}
.size-48-128 {
width: 128rpx;
height: 48rpx;
}
.size-64 {
width: 64rpx;
height: 64rpx;
}
.size-128 {
width: 128rpx;
height: 128rpx;
}
.icon-arrow-solid::after {
content: '';
background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB0PSIxNzQ1ODA2NDUxMTAzIiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjE0MDQ5IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiPjxwYXRoIGQ9Ik0xMDA0Ljk5MTg5NCAyNDIuOTkzNDRjLTEyLjY1ODA2MS0xMi42Njg1NjgtMjcuNjYyODAyLTE4Ljk5NzU5OS00NS4wMDAyMTItMTguOTk3NTk5SDY0LjAwNDgxNmMtMTcuMzQ0NDE1IDAtMzIuMzM4NjQ5IDYuMzI5MDMtNDUuMDA3MjE3IDE4Ljk5NzU5OUM2LjMyOTAzIDI1NS42NzYwMTggMCAyNzAuNjcwMjUxIDAgMjg4LjAwNDE1OWMwIDE3LjMzMDQwNSA2LjMyOTAzIDMyLjMyNDYzOSAxOC45OTc1OTkgNDQuOTk2NzFsNDQ3Ljk5NTE4NCA0NDcuOTk1MTg0YzEyLjY4MjU3OCAxMi42Njg1NjggMjcuNjc2ODEyIDE5LjAxMTYwOSA0NS4wMDcyMTcgMTkuMDExNjA5czMyLjMzODY0OS02LjM0MzA0IDQ0Ljk5NjcxLTE5LjAxMTYwOUwxMDA0Ljk5MTg5NCAzMzIuOTk3MzY2YzEyLjY1NDU1OC0xMi42Njg1NjggMTkuMDA4MTA2LTI3LjY2MjgwMiAxOS4wMDgxMDYtNDQuOTk2NzA5IDAtMTcuMzMwNDA1LTYuMzUzNTQ4LTMyLjMyNDYzOS0xOS4wMDgxMDYtNDUuMDA3MjE3eiIgcC1pZD0iMTQwNTAiIGZpbGw9IiNkYmRiZGIiPjwvcGF0aD48L3N2Zz4=');
display: block;
background-size: cover;
width: 20rpx;
height: 20rpx;
margin-left: 10rpx;
}
.no-more {
display: flex;
align-items: center;
width: 80%;
margin: 40rpx 0rpx 0rpx 0rpx;
align-self: center;
}
.no-more::before,
.no-more::after {
content: "";
flex: 1;
height: 1px;
background-color: $divider-color;
}
.no-more-dot {
color: $text-gray-hint-color;
font-size: 24rpx;
margin: 0rpx 20rpx;
padding: 0rpx 10rpx;
width: 70rpx;
height: 25rpx;
white-space: nowrap;
background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAgCAMAAADT9S0cAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAt9QTFRFAAAA8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDwidWAvwAAAPV0Uk5TAApczBo4wENq+RzBcIUyCAMkbcSiBictEnP/IEbvUxi/28fxXo788JxMETuG3v3+pwSTmWUFipAVIdTzSU2dY370hz4Bfdp0FM34+jTf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');
background-size: 100% 100%;
background-repeat: no-repeat;
}
.uni-popup-message__box {
text-align: center;
}
.uni-popup {
z-index: 9999;
}
.bottom-dialog-container {
display: flex;
flex-direction: column;
justify-content: center;
padding: 30rpx;
}
.dialog-title-box {
display: flex;
flex-direction: row;
align-items: center;
}
.dialog-title-txt {
align-self: center;
flex: 1;
text-align: center;
font-size: 32rpx;
font-weight: bold;
}
.has-icon {
margin-left: -48rpx;
}
.condition-box {
position: fixed;
/* #ifdef H5 */
top: 80rpx;
/* #endif */
/* #ifdef MP-BAIDU */
top: 0;
/* #endif */
left: 0;
display: flex;
flex-direction: column;
box-sizing: border-box;
width: 100%;
z-index: 99;
}
.condition-input-box {
display: flex;
flex-direction: row;
align-items: center;
padding: 20rpx 30rpx 0rpx 30rpx;
}
.condition-input-container {
display: flex;
flex-direction: row;
align-items: center;
background-color: white;
padding: 10rpx;
border-radius: 10rpx;
flex: 1;
}
.condition-option-btn {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
border-radius: 15rpx;
padding: 10rpx 15rpx;
font-size: 20rpx;
background-color: $divider-color;
}
.condition-option-btn:active {
background-color: $gray-bg-color;
}
.condition-input-text {
font-size: 28rpx;
flex: 1;
text-align: center;
margin-right: 10rpx;
}
.condition-content {
margin-top: 5rpx;
max-height: 0vh;
background-color: $bg-gray-shade-color;
overflow: hidden;
transition: max-height 0.5s ease;
}
.condition-content.visible {
max-height: 100vh;
}
.condition-mask {
background-color: $bg-gray-shade-color;
height: 100vh;
}
</style>