From 0dec1618fa93f22d4a278fd4edbd283296a3668f Mon Sep 17 00:00:00 2001
From: Apcallover <1503963513@qq.com>
Date: Sun, 30 Nov 2025 14:08:16 +0800
Subject: [PATCH] =?UTF-8?q?flat:=20=E4=BC=98=E5=8C=96=EF=BC=8C=E8=BF=98?=
=?UTF-8?q?=E6=98=AF=E4=BD=BF=E7=94=A8=E5=8E=9F=E7=94=9FTabbar,empty?=
=?UTF-8?q?=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
App.vue | 19 ++++--
common/animation.css | 34 ++++++++++
common/common.css | 4 ++
components/empty/empty.vue | 41 +++++++++---
.../Intendedposition/Intendedposition.vue | 11 ++--
packageA/pages/UnitDetails/UnitDetails.vue | 28 ++++----
packageA/pages/browseJob/browseJob.vue | 23 +++----
.../pages/choicenessList/choicenessList.vue | 6 +-
packageA/pages/collection/collection.vue | 5 +-
packageA/pages/exhibitors/exhibitors.vue | 4 +-
packageA/pages/reservation/reservation.vue | 29 +++++----
pages.json | 4 +-
pages/careerfair/careerfair copy.vue | 7 +-
pages/careerfair/careerfair.vue | 4 +-
pages/chat/chat.vue | 65 ++++++++++++-------
pages/index/components/index-one.vue | 2 +-
pages/index/index.vue | 2 +-
pages/mine/mine.vue | 4 +-
pages/msglog/msglog.vue | 2 +-
pages/nearby/components/four.vue | 12 ++--
pages/nearby/components/one.vue | 8 ++-
pages/nearby/components/three.vue | 11 +++-
pages/nearby/components/two.vue | 9 ++-
23 files changed, 229 insertions(+), 105 deletions(-)
diff --git a/App.vue b/App.vue
index b68a331..99acae0 100644
--- a/App.vue
+++ b/App.vue
@@ -124,11 +124,22 @@ function loginCallback(userInfo) {
/*每个页面公共css */
@import '@/common/animation.css';
@import '@/common/common.css';
-/* 修改pages tabbar样式 H5有效 */
+
+/* 修改pages tabbar样式 H5才有效 */
.uni-tabbar .uni-tabbar__item:nth-child(4) .uni-tabbar__bd .uni-tabbar__icon {
- height: 110rpx !important;
- width: 122rpx !important;
- margin-top: 6rpx;
+ width: 108rpx !important;
+ height: 98rpx !important;
+ margin-top: 0rpx;
+ transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
+ transform-origin: center center;
+ /* transition: transform 0.15s ease-in-out; */
+ /* transform-origin: center center; */
+}
+
+.uni-tabbar .uni-tabbar__item:nth-child(4) .uni-tabbar__bd .uni-tabbar__icon:active {
+ transform: scale(0.8);
+ transition: transform 0.1s ease-out;
+ /* animation: jelly 0.5s; */
}
.uni-tabbar-border {
diff --git a/common/animation.css b/common/animation.css
index d6e411f..3125565 100644
--- a/common/animation.css
+++ b/common/animation.css
@@ -190,4 +190,38 @@
.btn-rubberBand:active {
-webkit-animation-name: tada;
animation-name: tada
+}
+
+@keyframes jelly {
+ 0% {
+ transform: scale(1);
+ }
+
+ 30% {
+ transform: scale(1.25, 0.75);
+ }
+
+ /* 压扁 */
+ 40% {
+ transform: scale(0.75, 1.25);
+ }
+
+ /* 拉长 */
+ 50% {
+ transform: scale(1.15, 0.85);
+ }
+
+ /* 稍微压扁 */
+ 65% {
+ transform: scale(0.95, 1.05);
+ }
+
+ /* 稍微拉长 */
+ 75% {
+ transform: scale(1.05, 0.95);
+ }
+
+ 100% {
+ transform: scale(1);
+ }
}
\ No newline at end of file
diff --git a/common/common.css b/common/common.css
index 68e0da4..da7cc25 100644
--- a/common/common.css
+++ b/common/common.css
@@ -468,4 +468,8 @@ html {
.grayscale {
filter: grayscale(100%) opacity(0.6);
+}
+
+.height-100 {
+ height: 100%;
}
\ No newline at end of file
diff --git a/components/empty/empty.vue b/components/empty/empty.vue
index 03f072e..ecd0aec 100644
--- a/components/empty/empty.vue
+++ b/components/empty/empty.vue
@@ -1,5 +1,9 @@
-
+
@@ -30,18 +34,23 @@ export default {
pdTop: {
type: String,
required: false,
- default: '80',
+ default: '0',
},
mrTop: {
type: String,
required: false,
- default: '20',
+ default: '0',
},
pictrue: {
type: String,
required: false,
default: '',
},
+ isPosition: {
+ type: Boolean,
+ required: false,
+ default: false,
+ },
},
methods: {},
};
@@ -52,19 +61,33 @@ image {
width: 100%;
height: 100%;
}
+.position-center {
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+}
.empty {
width: 100%;
- min-height: 100vh;
- position: relative;
+ height: 100%;
+ flex: 1;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ // min-height: 100vh;
+ // height: 400rpx;
+ // position: relative;
.ty_content {
- position: absolute;
- left: 50%;
- top: 0;
- transform: translate(-50%, 0);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
+ // position: absolute;
+ // left: 50%;
+ // top: 0;
+ // transform: translate(-50%, 0);
+
.content_top {
width: 450rpx;
height: 322rpx;
diff --git a/packageA/pages/Intendedposition/Intendedposition.vue b/packageA/pages/Intendedposition/Intendedposition.vue
index a9c4e57..61a7234 100644
--- a/packageA/pages/Intendedposition/Intendedposition.vue
+++ b/packageA/pages/Intendedposition/Intendedposition.vue
@@ -1,13 +1,13 @@
-
-
-
+ :latitude="latitudeVal"
+ >
+
@@ -75,7 +75,8 @@ function getJobList(type = 'add') {
.collection-content{
padding: 1rpx 28rpx 20rpx 28rpx;
background: #F4F4F4;
- height: 100%
+ height: 100%;
min-height: calc(100vh - var(--window-top) - var(--status-bar-height) - var(--window-bottom));
+ position: relative;
}
diff --git a/packageA/pages/UnitDetails/UnitDetails.vue b/packageA/pages/UnitDetails/UnitDetails.vue
index af8d916..7af3248 100644
--- a/packageA/pages/UnitDetails/UnitDetails.vue
+++ b/packageA/pages/UnitDetails/UnitDetails.vue
@@ -62,7 +62,7 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
+
@@ -96,7 +96,7 @@ onLoad((options) => {
console.log(options);
dataType.value = options.dataType ? parseInt(options.dataType) : 1;
pageOptions.value = options;
-
+
if (dataType.value === 2) {
// 第三方数据
getCompanyInfo(options.companyId, options.zphId);
@@ -170,7 +170,7 @@ function getJobsList(type = 'add') {
function getThirdPartyJobsList(type = 'add') {
const { companyId, companyName, zphId } = pageOptions.value;
-
+
if (type === 'refresh') {
pageState.current = 1;
pageState.maxPage = 1;
@@ -178,16 +178,18 @@ function getThirdPartyJobsList(type = 'add') {
if (type === 'add' && pageState.current < pageState.maxPage) {
pageState.current += 1;
}
-
+
let params = {
current: pageState.current,
pageSize: pageState.pageSize,
};
-
- $api.createRequest(`/app/internal/jobThirdPart?gsID=${companyId}&gsmc=${companyName}&zphID=${zphId}`, params).then((resData) => {
- const { rows, total } = resData;
- handleJobsListResponse(type, rows, total, 'current');
- });
+
+ $api.createRequest(`/app/internal/jobThirdPart?gsID=${companyId}&gsmc=${companyName}&zphID=${zphId}`, params).then(
+ (resData) => {
+ const { rows, total } = resData;
+ handleJobsListResponse(type, rows, total, 'current');
+ }
+ );
}
function getOriginalJobsList(type = 'add') {
@@ -198,12 +200,12 @@ function getOriginalJobsList(type = 'add') {
if (type === 'add' && pageState.page < pageState.maxPage) {
pageState.page += 1;
}
-
+
let params = {
current: pageState.page,
pageSize: pageState.pageSize,
};
-
+
$api.createRequest(`/app/company/job/${companyInfo.value.companyId}`, params).then((resData) => {
const { rows, total } = resData;
handleJobsListResponse(type, rows, total, 'page');
@@ -322,6 +324,8 @@ image {
background: #F4F4F4;
.views{
padding: 28rpx
+ min-height: calc(100% - 56rpx)
+ position: relative
.Detail-title{
font-weight: 600;
font-size: 32rpx;
@@ -402,4 +406,4 @@ image {
}
}
}
-
\ No newline at end of file
+
diff --git a/packageA/pages/browseJob/browseJob.vue b/packageA/pages/browseJob/browseJob.vue
index c9cbc26..7b54fd1 100644
--- a/packageA/pages/browseJob/browseJob.vue
+++ b/packageA/pages/browseJob/browseJob.vue
@@ -24,15 +24,14 @@
-
-
-
-
+
+
+
@@ -87,8 +86,6 @@ function toSelectDate() {
});
}
-
-
function searchCollection(e) {
const value = e.detail.value;
pageState.search.jobTitle = value;
@@ -216,6 +213,6 @@ image {
.one-cards{
padding: 0 20rpx 20rpx 20rpx;
background: #f4f4f4
-
+ height: 100%
}
-
\ No newline at end of file
+
diff --git a/packageA/pages/choicenessList/choicenessList.vue b/packageA/pages/choicenessList/choicenessList.vue
index 8245d57..357535b 100644
--- a/packageA/pages/choicenessList/choicenessList.vue
+++ b/packageA/pages/choicenessList/choicenessList.vue
@@ -27,7 +27,7 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
+
@@ -151,6 +151,8 @@ image {
}
.main-list{
background-color: #F4F4F4;
- padding: 1rpx 28rpx 28rpx 28rpx
+ padding: 1rpx 28rpx 28rpx 28rpx;
+ min-height: calc(100% - 29rpx);
+ position: relative
}
diff --git a/packageA/pages/collection/collection.vue b/packageA/pages/collection/collection.vue
index d181d7b..a627a04 100644
--- a/packageA/pages/collection/collection.vue
+++ b/packageA/pages/collection/collection.vue
@@ -26,7 +26,7 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
+
@@ -44,7 +44,7 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
+
@@ -262,6 +262,7 @@ function getCompanyList(type = 'add') {
.swiper{
height: 100%
.mian{
+ height: 100%
padding: 0 28rpx 28rpx 28rpx
}
}
diff --git a/packageA/pages/exhibitors/exhibitors.vue b/packageA/pages/exhibitors/exhibitors.vue
index a4b7827..ca3fac5 100644
--- a/packageA/pages/exhibitors/exhibitors.vue
+++ b/packageA/pages/exhibitors/exhibitors.vue
@@ -83,7 +83,7 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
+
@@ -433,6 +433,8 @@ image {
background: #F4F4F4;
.views{
padding: 28rpx
+ min-height: calc(100% - 56rpx);
+ position: relative
.Detail-title{
font-weight: 600;
font-size: 32rpx;
diff --git a/packageA/pages/reservation/reservation.vue b/packageA/pages/reservation/reservation.vue
index 89bf7c7..bd2aa1d 100644
--- a/packageA/pages/reservation/reservation.vue
+++ b/packageA/pages/reservation/reservation.vue
@@ -12,10 +12,19 @@
-
+
-
+
@@ -37,7 +46,7 @@
-
+
@@ -72,7 +81,7 @@ const ranOptions = ref([
]);
function isTimePassed(timeStr) {
- if(!timeStr) return false
+ if (!timeStr) return false;
const targetTime = new Date(timeStr.replace(/-/g, '/')).getTime(); // 兼容格式
const now = Date.now();
return now < targetTime;
@@ -95,16 +104,14 @@ function updateCancel(item) {
content: '确定要取消预约吗?',
showCancel: true,
success: ({ confirm, cancel }) => {
- if(confirm){
- $api.createRequest(`/app/fair/collection/${fairId}`, {}, 'DELETE').then((resData) => {
+ if (confirm) {
+ $api.createRequest(`/app/fair/collection/${fairId}`, {}, 'DELETE').then((resData) => {
getList('refresh');
$api.msg('取消预约成功');
});
}
- }
- })
-
-
+ },
+ });
}
function getList(type = 'add', loading = true) {
@@ -178,7 +185,7 @@ function getList(type = 'add', loading = true) {
display: flex
align-items: center
}
-
+
}
.card-Title{
font-family: 'PingFangSC-Medium', 'PingFang SC', 'Helvetica Neue', Helvetica, Arial, 'Microsoft YaHei', sans-serif;
diff --git a/pages.json b/pages.json
index f54ad54..94bbace 100644
--- a/pages.json
+++ b/pages.json
@@ -227,8 +227,8 @@
]
}],
"tabBar": {
- "custom": true,
- "display": "none",
+ // "custom": true,
+ // "display": "none",
"color": "#5E5F60",
"selectedColor": "#256BFA",
"borderStyle": "black",
diff --git a/pages/careerfair/careerfair copy.vue b/pages/careerfair/careerfair copy.vue
index 0abc265..4431345 100644
--- a/pages/careerfair/careerfair copy.vue
+++ b/pages/careerfair/careerfair copy.vue
@@ -122,7 +122,7 @@ onLoad(() => {
startDate: currentDate,
});
weekList.value = result;
- currentDay.value.fullDate = result[0].fullDate
+ currentDay.value.fullDate = result[0].fullDate;
getFair('refresh');
});
@@ -162,12 +162,11 @@ function seemsg(index) {
}
const handleScrollToLower = () => {
- return
+ return;
getFair();
console.log('触底');
};
-
function getFair(type = 'add') {
if (type === 'refresh') {
pageState.page = 1;
@@ -194,7 +193,7 @@ function getFair(type = 'add') {
// const end = fairList.value.length;
// const reslist = rows;
// fairList.value.splice(str, end, ...reslist);
- fairList.value = rows
+ fairList.value = rows;
} else {
fairList.value = rows;
}
diff --git a/pages/careerfair/careerfair.vue b/pages/careerfair/careerfair.vue
index e5032cc..5d5495b 100644
--- a/pages/careerfair/careerfair.vue
+++ b/pages/careerfair/careerfair.vue
@@ -94,10 +94,10 @@
-
+
-
+
diff --git a/pages/chat/chat.vue b/pages/chat/chat.vue
index 591a30c..35f8b4b 100644
--- a/pages/chat/chat.vue
+++ b/pages/chat/chat.vue
@@ -63,9 +63,9 @@
-
+
@@ -213,27 +213,48 @@ footer-height = 98rpx
background: #FFFFFF;
display: flex
flex-direction: column
- .drawer-user
- border-top: 1rpx solid rgba(0,0,0,.1);
- padding: 20rpx 28rpx
- display: flex
+ .drawer-user {
+ display: flex;
+ align-items: center;
+ width: 100%;
+ box-sizing: border-box;
+ padding: 24rpx 32rpx;
+ padding-bottom: calc(24rpx + constant(safe-area-inset-bottom));
+ padding-bottom: calc(24rpx + env(safe-area-inset-bottom));
+ border-top: 1rpx solid rgba(0, 0, 0, 0.06);
+ background-color: #ffffff;
+ color: #333333;
font-weight: 500;
- align-items: center
- position: relative
- margin-bottom: calc( 32rpx + var(--window-bottom)); /*兼容 IOS<11.2*/
- margin-bottom: calc( 32rpx +var(--window-bottom)); /*兼容 IOS>11.2*/
- color: #000000
- .drawer-user-img
- width: 57.2rpx;
- height: 57.2rpx
- margin-right: 20rpx
- .drawer-user-setting
- width: 48rpx
- height: 48rpx
- position: absolute
- top: 50%
- right: 28rpx
- transform: translate(0,-50%)
+ font-size: 28rpx;
+
+ &:active {
+ background-color: #f9f9f9;
+ }
+
+ .drawer-user-img {
+ width: 60rpx;
+ height: 60rpx;
+ border-radius: 50%;
+ margin-right: 24rpx;
+ background-color: #eee;
+ flex-shrink: 0;
+ }
+
+ .user-name {
+ flex: 1;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ font-size: 30rpx;
+ }
+
+ .drawer-user-setting {
+ width: 48rpx;
+ height: 48rpx;
+ margin-left: auto;
+ opacity: 0.8;
+ }
+ }
.drawer-title
height: header-height;
line-height: header-height;
diff --git a/pages/index/components/index-one.vue b/pages/index/components/index-one.vue
index 3b50ec1..79b6ccf 100644
--- a/pages/index/components/index-one.vue
+++ b/pages/index/components/index-one.vue
@@ -142,7 +142,7 @@
-
+
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 771556d..614dd23 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -41,7 +41,7 @@
-
+
diff --git a/pages/mine/mine.vue b/pages/mine/mine.vue
index afbcc5f..186dea1 100644
--- a/pages/mine/mine.vue
+++ b/pages/mine/mine.vue
@@ -95,9 +95,9 @@
>
-
+
diff --git a/pages/msglog/msglog.vue b/pages/msglog/msglog.vue
index 4d73acc..e2a6b55 100644
--- a/pages/msglog/msglog.vue
+++ b/pages/msglog/msglog.vue
@@ -40,7 +40,7 @@
-
+
diff --git a/pages/nearby/components/four.vue b/pages/nearby/components/four.vue
index 0cba282..cd84057 100644
--- a/pages/nearby/components/four.vue
+++ b/pages/nearby/components/four.vue
@@ -75,8 +75,8 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
-
+
+
@@ -340,6 +340,7 @@ defineExpose({ loadData, handleFilterConfirm });
color: #4778EC !important
.nearby-scroll
overflow: hidden;
+ height: 100%;
.two-head
margin: 22rpx;
display: flex;
@@ -380,8 +381,10 @@ defineExpose({ loadData, handleFilterConfirm });
border-radius: 12rpx 12rpx 12rpx 12rpx;
.nearby-list
border-top: 2rpx solid #EBEBEB;
- height: 100%
+ height: calc(100% - 140rpx)
+ background: #f4f4f4
.one-cards{
+ height: 100%
display: flex;
flex-direction: column;
padding: 0 20rpx 20rpx 20rpx;
@@ -389,6 +392,7 @@ defineExpose({ loadData, handleFilterConfirm });
}
.nav-filter
padding: 16rpx 28rpx 0 28rpx
+ background: #ffffff
.filter-top
display: flex
justify-content: space-between;
@@ -447,4 +451,4 @@ defineExpose({ loadData, handleFilterConfirm });
height: 26rpx;
.active
transform: rotate(180deg)
-
\ No newline at end of file
+
diff --git a/pages/nearby/components/one.vue b/pages/nearby/components/one.vue
index a92cb9e..33241ce 100644
--- a/pages/nearby/components/one.vue
+++ b/pages/nearby/components/one.vue
@@ -80,8 +80,8 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
-
+
+
@@ -364,11 +364,14 @@ defineExpose({ loadData, handleFilterConfirm });
}
.nearby-scroll
overflow: hidden;
+ height: 100%;
.nearby-map
height: 767rpx;
background: #e8e8e8;
overflow: hidden
.nearby-list
+ height: calc(100% - 384rpx)
+ background: #f4f4f4
.one-cards{
display: flex;
flex-direction: column;
@@ -378,6 +381,7 @@ defineExpose({ loadData, handleFilterConfirm });
}
.nav-filter
padding: 16rpx 28rpx 0 28rpx
+ background: #ffffff
.filter-top
display: flex
justify-content: space-between;
diff --git a/pages/nearby/components/three.vue b/pages/nearby/components/three.vue
index 973ca51..02fe209 100644
--- a/pages/nearby/components/three.vue
+++ b/pages/nearby/components/three.vue
@@ -101,8 +101,8 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
-
+
+
@@ -359,8 +359,9 @@ defineExpose({ loadData, handleFilterConfirm });
color: #4778EC !important;
.nearby-scroll
overflow: hidden;
+ height: 100%
.three-head
- margin: 24rpx 0 0 0;
+ // margin: 24rpx 0 0 0;
padding: 26rpx 0 0 0;
border-radius: 17rpx 17rpx 17rpx 17rpx;
.one-picker
@@ -482,7 +483,10 @@ defineExpose({ loadData, handleFilterConfirm });
z-index: 1;
.nearby-list
border-top: 2rpx solid #EBEBEB;
+ height: calc(100% - 222rpx)
+ background: #f4f4f4
.one-cards{
+ height: 100%
display: flex;
flex-direction: column;
padding: 0 20rpx 20rpx 20rpx;
@@ -490,6 +494,7 @@ defineExpose({ loadData, handleFilterConfirm });
}
.nav-filter
padding: 16rpx 28rpx 0 28rpx
+ background: #ffffff
.filter-top
display: flex
justify-content: space-between;
diff --git a/pages/nearby/components/two.vue b/pages/nearby/components/two.vue
index 2ffc419..4245977 100644
--- a/pages/nearby/components/two.vue
+++ b/pages/nearby/components/two.vue
@@ -71,8 +71,8 @@
:longitude="longitudeVal"
:latitude="latitudeVal"
>
-
-
+
+
@@ -255,6 +255,7 @@ defineExpose({ loadData, handleFilterConfirm });
color: #4778EC !important
.nearby-scroll
overflow: hidden;
+ height: 100%;
.two-head
margin: 22rpx;
display: flex;
@@ -284,14 +285,18 @@ defineExpose({ loadData, handleFilterConfirm });
border-radius: 12rpx 12rpx 12rpx 12rpx;
.nearby-list
border-top: 2rpx solid #EBEBEB;
+ height: calc(100% - 252rpx)
+ background: #f4f4f4
.one-cards{
display: flex;
flex-direction: column;
padding: 0 20rpx 20rpx 20rpx;
background: #f4f4f4
+ height: 100%
}
.nav-filter
padding: 16rpx 28rpx 0 28rpx
+ background: #ffffff
.filter-top
display: flex
justify-content: space-between;