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 da7cc25..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; */ } @@ -472,4 +479,159 @@ html { .height-100 { height: 100%; +} + + +.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/common/globalFunction.js b/common/globalFunction.js index 2c3d63f..4ae779c 100644 --- a/common/globalFunction.js +++ b/common/globalFunction.js @@ -285,9 +285,9 @@ function deg2rad(deg) { } function vacanciesTo(vacancies) { - if(!vacancies){ - return '不限人数' - }else if (vacancies >= 0) { + if (vacancies === null) { + return '-人' + } else if (vacancies >= 0) { return vacancies + "人" } else { return '不限人数' diff --git a/components/renderCompanysOutData/renderCompanysOutData.vue b/components/renderCompanysOutData/renderCompanysOutData.vue index 26b61c6..01c3243 100644 --- a/components/renderCompanysOutData/renderCompanysOutData.vue +++ b/components/renderCompanysOutData/renderCompanysOutData.vue @@ -1,48 +1,52 @@ diff --git a/components/renderJobs/renderJobs.vue b/components/renderJobs/renderJobs.vue index b877e20..13c25f1 100644 --- a/components/renderJobs/renderJobs.vue +++ b/components/renderJobs/renderJobs.vue @@ -1,48 +1,54 @@ --> - + diff --git a/manifest.json b/manifest.json index ecc65c8..e4373ed 100644 --- a/manifest.json +++ b/manifest.json @@ -80,7 +80,7 @@ "locale": "zh-Hans", "h5": { "router": { - "base": "/app/", + "base": "./", "mode": "hash" }, "title": "青岛智慧就业服务", diff --git a/packageA/pages/Intendedposition/Intendedposition.vue b/packageA/pages/Intendedposition/Intendedposition.vue index 404e8a5..0b5a1bb 100644 --- a/packageA/pages/Intendedposition/Intendedposition.vue +++ b/packageA/pages/Intendedposition/Intendedposition.vue @@ -21,6 +21,7 @@ import { storeToRefs } from 'pinia'; import useLocationStore from '@/stores/useLocationStore'; const { longitudeVal, latitudeVal } = storeToRefs(useLocationStore()); const userStore = useUserStore(); +const { isMiniProgram } = storeToRefs(useUserStore()); const state = reactive({}); const pageState = reactive({ page: 0, @@ -37,6 +38,15 @@ onLoad(() => { getJobList(); }); +onMounted(() => { + // #ifdef H5 + if (!isMiniProgram.value) { + const a = document.getElementsByClassName('uni-page-head-hd')[0]; + a.style.display = 'none'; + } + // #endif +}); + onReachBottom(() => { getJobList(); }); diff --git a/packageA/pages/UnitDetails/UnitDetails.vue b/packageA/pages/UnitDetails/UnitDetails.vue index ee8ce79..ee65f63 100644 --- a/packageA/pages/UnitDetails/UnitDetails.vue +++ b/packageA/pages/UnitDetails/UnitDetails.vue @@ -1,6 +1,6 @@