From f24d95cedf58f8e86fd4cef4ee8364d353af3f22 Mon Sep 17 00:00:00 2001
From: Apcallover <1503963513@qq.com>
Date: Mon, 8 Dec 2025 21:46:55 +0800
Subject: [PATCH] =?UTF-8?q?flat:=20=E7=BC=93=E5=8A=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
App.vue | 2 +
common/common.css | 163 +++++++-
.../renderCompanysOutData.vue | 89 ++--
components/renderJobs/renderJobs.vue | 92 +++--
.../renderJobsOutData/renderJobsOutData.vue | 78 ++--
config.js | 11 +-
.../Intendedposition/Intendedposition.vue | 10 +
packageA/pages/UnitDetails/UnitDetails.vue | 7 +-
packageA/pages/addPosition/addPosition.vue | 4 +-
packageA/pages/browseJob/browseJob.vue | 5 +-
packageA/pages/choiceness/choiceness.vue | 4 +-
.../pages/choicenessList/choicenessList.vue | 4 +-
packageA/pages/collection/collection.vue | 4 +-
packageA/pages/exhibitors/exhibitors.vue | 9 +-
packageA/pages/myResume/myResume.vue | 4 +-
packageA/pages/post/post.vue | 5 +-
packageA/pages/reservation/reservation.vue | 11 +-
packageA/pages/selectDate/selectDate.vue | 5 +-
packageA/pages/vCard/vCard.vue | 4 +-
packageA/pages/workExp/workExp.vue | 384 +++++++++---------
pages/careerfair/careerfair.vue | 79 ++--
pages/index/components/index-refactor.vue | 2 +-
pages/index/index.vue | 4 +-
pages/nearby/nearby.vue | 5 +-
stores/useUserStore.js | 10 +-
25 files changed, 642 insertions(+), 353 deletions(-)
diff --git a/App.vue b/App.vue
index eb78bd7..951d4e5 100644
--- a/App.vue
+++ b/App.vue
@@ -14,8 +14,10 @@ onLaunch((options) => {
useDictStore().getDictData();
try {
getUserInfo();
+ useUserStore().changMiniProgramAppStatus(false);
} catch {
console.log('不是爱山东平台,使用测试登陆');
+ useUserStore().changMiniProgramAppStatus(true);
useUserStore().initSeesionId(); //更新
let token = uni.getStorageSync('token') || ''; // 同步获取 缓存信息
if (token) {
diff --git a/common/common.css b/common/common.css
index 3e8e73b..c558f2e 100644
--- a/common/common.css
+++ b/common/common.css
@@ -33,12 +33,17 @@ html {
overflow-x: hidden;
}
+li {
+ list-style: none;
+}
+
/* 布局调整 */
/* 点击动效 */
/* 缩小 */
.button-click {
- transition: transform 0.1s ease;
+ /* transition: transform 0.1s ease; */
+ transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.button-click:active {
@@ -67,7 +72,8 @@ html {
}
.btn-feel {
- transition: transform 0.15s ease;
+ transition: transform 0.5s ease;
+ /* transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); */
transform-style: preserve-3d;
}
@@ -84,7 +90,8 @@ html {
border: none;
border-radius: 6px;
cursor: pointer;
- transition: transform 0.1s ease, box-shadow 0.1s ease;
+ /* transition: transform 0.4s ease, box-shadow 0.1s ease; */
+ transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
/* box-shadow: 0 4px 0 #2C3E50; */
}
@@ -477,4 +484,154 @@ html {
.pointEveNone {
pointer-events: none;
+}
+
+/*
+ *
+ * TransitionGroup 动画
+ * stagger 错峰
+ * fade-up-stagger --i 淡入上滑(经典错峰)
+ * pop-in-stagger --i 旋转缩放弹入(活泼)
+ * slide-left-stagger 从左侧滑入(消息流风格)
+ * blur-fade-stagger --i 渐显 + 模糊(毛玻璃感)
+ * bounce-up-stagger 从底部弹跳入场(物理感)
+ *
+ */
+/* 淡入上滑(经典错峰) */
+.fade-up-stagger-enter-active {
+ transition: all 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);
+ transition-delay: calc(var(--i) * 0.1s);
+}
+
+.fade-up-stagger-enter-from {
+ opacity: 0;
+ transform: translateY(20px);
+}
+
+.fade-up-stagger-leave-active {
+ transition: opacity 0.25s ease;
+}
+
+.fade-up-stagger-leave-to {
+ opacity: 0;
+}
+
+/* */
+
+.pop-in-stagger-enter-active {
+ transition: all 0.45s cubic-bezier(0.68, -0.55, 0.27, 1.55);
+ transition-delay: calc(var(--i) * 0.08s);
+}
+
+.pop-in-stagger-enter-from {
+ opacity: 0;
+ transform: scale(0.7) rotate(-10deg);
+}
+
+.pop-in-stagger-leave-active {
+ transition: all 0.2s ease;
+}
+
+.pop-in-stagger-leave-to {
+ opacity: 0;
+ transform: scale(0.9) rotate(5deg);
+}
+
+.slide-left-stagger-enter-active {
+ transition: all 0.35s ease-out;
+ transition-delay: calc(var(--i) * 0.07s);
+}
+
+.slide-left-stagger-enter-from {
+ opacity: 0;
+ transform: translateX(-100%);
+}
+
+.slide-left-stagger-leave-active {
+ transition: all 0.25s ease;
+}
+
+.slide-left-stagger-leave-to {
+ opacity: 0;
+ transform: translateX(50%);
+}
+
+/* 错峰动画 */
+.stagger-enter-active {
+ transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
+ transition-delay: calc(var(--i) * 0.42s);
+ /* 关键:120ms 间隔 */
+}
+
+.stagger-enter-from {
+ opacity: 0;
+ transform: translateY(30px) scale(0.95);
+ /* 更大位移 + 轻微缩放 */
+}
+
+.stagger-leave-active {
+ transition: all 0.25s ease;
+}
+
+.stagger-leave-to {
+ opacity: 0;
+ transform: translateX(20px);
+}
+
+.stagger-move {
+ transition: transform 0.4s ease;
+}
+
+.blur-fade-stagger-enter-active {
+ transition: all 0.5s ease;
+ transition-delay: calc(var(--i) * 0.09s);
+}
+
+.blur-fade-stagger-enter-from {
+ opacity: 0;
+ filter: blur(8px);
+ transform: scale(1.02);
+}
+
+.blur-fade-stagger-leave-active {
+ transition: all 0.2s ease;
+}
+
+.blur-fade-stagger-leave-to {
+ opacity: 0;
+ filter: blur(4px);
+}
+
+.bounce-up-stagger-enter-active {
+ animation: stagger-bounce 0.6s forwards;
+ animation-delay: calc(var(--i) * 0.12s);
+}
+
+.bounce-up-stagger-leave-active {
+ transition: all 0.25s ease;
+}
+
+.bounce-up-stagger-leave-to {
+ opacity: 0;
+ transform: translateY(30px);
+}
+
+@keyframes stagger-bounce {
+ 0% {
+ opacity: 0;
+ transform: translateY(100px) scale(0.8);
+ }
+
+ 60% {
+ transform: translateY(-10px) scale(1.05);
+ }
+
+ 80% {
+ transform: translateY(5px) scale(0.98);
+ }
+
+ 100% {
+ opacity: 1;
+ transform: translateY(0) scale(1);
+ }
}
\ No newline at end of file
diff --git a/components/renderCompanysOutData/renderCompanysOutData.vue b/components/renderCompanysOutData/renderCompanysOutData.vue
index 87f22fa..a27cc7b 100644
--- a/components/renderCompanysOutData/renderCompanysOutData.vue
+++ b/components/renderCompanysOutData/renderCompanysOutData.vue
@@ -1,48 +1,52 @@
-
-
-
- {{ job.gsmc }}
-
-
-
-
- {{job.gsxy}}
+ {{ job.gsxy }}
+
+
+
+ 在招职位·
+ {{ job.zzgwsl || '-' }}
+ 个
+
+
-
-
- 在招职位·
- {{ job.zzgwsl || '-' }}
- 个
-
-
-
-
-
-
-
-
-
- {{ vacanciesTo(job.vacancies) }}
-
-
- {{job.qyxz}}
+
+
+
+
+
+
+ {{ vacanciesTo(job.vacancies) }}
+
+
+ {{ job.qyxz }}
+
-
+
diff --git a/components/renderJobs/renderJobs.vue b/components/renderJobs/renderJobs.vue
index c2d0623..57a2d60 100644
--- a/components/renderJobs/renderJobs.vue
+++ b/components/renderJobs/renderJobs.vue
@@ -1,48 +1,54 @@
-
-
-
- {{ job.jobTitle }}
-
-
+
+
+
+
+ {{ job.jobTitle }}
+
+
+
+
+ {{ job.gwmc }}
+
+
+
+
+
+
+
+
+ {{ vacanciesTo(job.vacancies) }}
+
+
+
+ {{ job.postingDate }}
+
+
+
+
- {{ job.gwmc }}
-
-
-
-
-
-
-
-
- {{ vacanciesTo(job.vacancies) }}
-
-
-
- {{ job.postingDate }}
-
-
-
-
+
+ {{ job.title }}
-
- {{ job.title }}
-
-
+
diff --git a/packageA/pages/workExp/workExp.vue b/packageA/pages/workExp/workExp.vue
index 08d3ce2..498645e 100644
--- a/packageA/pages/workExp/workExp.vue
+++ b/packageA/pages/workExp/workExp.vue
@@ -1,245 +1,249 @@
-
-
- 取消
-
-
- 确认
-
-
-
- 公司
-
-
-
- 岗位
-
-
-
- 时间
-
-
-
-
-
- -
-
-
-
-
+
+
+ 取消
+
+
+ 确认
+
+
+
+ 公司
+
+
+
+ 岗位
+
+
+
+ 时间
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+ 工作内容
+
+
-
-
- 工作内容
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/pages/careerfair/careerfair.vue b/pages/careerfair/careerfair.vue
index b6abb97..b78e627 100644
--- a/pages/careerfair/careerfair.vue
+++ b/pages/careerfair/careerfair.vue
@@ -45,54 +45,57 @@
-
- {{ item.zphmc }}
-
- {{ item.jbf }}
-
-
-
-
-
-
- {{ parseDateTime(item.zphjbsj).time }}
- {{ parseDateTime(item.zphjbsj).date }}
+
-
-
-
- {{ getTimeStatus(item.zphjbsj, item.zphjzsj).statusText }}
+
+
+ {{ parseDateTime(item.zphjbsj).time }}
+ {{ parseDateTime(item.zphjbsj).date }}
-
- {{ getHoursBetween(item.zphjbsj, item.zphjzsj) }}小时
+
+
+
+ {{ getTimeStatus(item.zphjbsj, item.zphjzsj).statusText }}
+
+
+ {{ getHoursBetween(item.zphjbsj, item.zphjzsj) }}小时
+
+
+
+
+ {{ parseDateTime(item.zphjzsj).time }}
+ {{ parseDateTime(item.zphjzsj).date }}
-
-
- {{ parseDateTime(item.zphjzsj).time }}
- {{ parseDateTime(item.zphjzsj).date }}
-
+
+
-
-
-
+
diff --git a/pages/index/components/index-refactor.vue b/pages/index/components/index-refactor.vue
index 00aaa40..5c031b4 100644
--- a/pages/index/components/index-refactor.vue
+++ b/pages/index/components/index-refactor.vue
@@ -49,7 +49,7 @@
-
+
使用人工智能需要先完成素质测评、完善简历 >
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 4437b6c..3695bef 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -91,7 +91,9 @@ onLoad(() => {
uni.preloadPage({ url: '/pages/nearby/nearby' });
uni.preloadPage({ url: '/pages/chat/chat' });
uni.preloadPage({ url: '/packageA/pages/choiceness/choiceness' });
- }, 3000);
+ uni.preloadPage({ url: '/packageA/pages/reservation/reservation' });
+ uni.preloadPage({ url: '/packageA/pages/Intendedposition/Intendedposition' });
+ }, 1000);
});
onShow(() => {
diff --git a/pages/nearby/nearby.vue b/pages/nearby/nearby.vue
index f52eb75..9f58e41 100644
--- a/pages/nearby/nearby.vue
+++ b/pages/nearby/nearby.vue
@@ -1,6 +1,6 @@
-
+
@@ -50,6 +50,9 @@ import threeComponent from './components/three.vue';
import fourComponent from './components/four.vue';
import { reactive, inject, watch, ref, onMounted } from 'vue';
import { onLoad, onShow } from '@dcloudio/uni-app';
+import { storeToRefs } from 'pinia';
+import useUserStore from '@/stores/useUserStore';
+const { isMiniProgram } = storeToRefs(useUserStore());
const { $api, debounce, throttle, navBack } = inject('globalFunction');
const loadedMap = reactive([false, false, false, false]);
const swiperRefs = [ref(null), ref(null), ref(null), ref(null)];
diff --git a/stores/useUserStore.js b/stores/useUserStore.js
index cd1e655..d0d89d4 100644
--- a/stores/useUserStore.js
+++ b/stores/useUserStore.js
@@ -58,6 +58,7 @@ const useUserStore = defineStore("user", () => {
const Completion = ref('0%')
const seesionId = ref('')
const counts = ref({})
+ const isMiniProgram = ref(false)
const login = (value) => {
hasLogin.value = true;
@@ -139,6 +140,11 @@ const useUserStore = defineStore("user", () => {
});
}
+ function changMiniProgramAppStatus(val) {
+ // 是否是小程序内
+ isMiniProgram.value = val
+ }
+
// 导入
return {
@@ -154,7 +160,9 @@ const useUserStore = defineStore("user", () => {
seesionId,
Completion,
getUserstatistics,
- counts
+ counts,
+ isMiniProgram,
+ changMiniProgramAppStatus
}
}, {
unistorage: true,