diff --git a/src/assets/img/home/kanoicon.png b/src/assets/img/home/kanoicon.png index 3ea771a1..dce015b0 100644 Binary files a/src/assets/img/home/kanoicon.png and b/src/assets/img/home/kanoicon.png differ diff --git a/src/assets/img/home/xiegang.png b/src/assets/img/home/xiegang.png new file mode 100644 index 00000000..f851b669 Binary files /dev/null and b/src/assets/img/home/xiegang.png differ diff --git a/src/views/Home/Home.vue b/src/views/Home/Home.vue index 7c9d1576..36735e68 100644 --- a/src/views/Home/Home.vue +++ b/src/views/Home/Home.vue @@ -2,8 +2,8 @@
- - + +
@@ -16,6 +16,7 @@ import Scene from './components/Scene.vue'; import Operating from './components/Operating.vue' import LaunchIntro from './components/LaunchIntro.vue' import Models from './components/Models.vue' +import { ref } from 'vue' export default { name: 'Home', components: { @@ -26,8 +27,20 @@ export default { Models }, setup() { - return { + const sceneRef = ref(null); + // 处理创建问卷的方法 + const handleCreateSurvey = (sceneObj, index) => { + // 调用 Scene 组件的 createScene 方法 + if (sceneRef.value) { + console.log(sceneRef.value); + sceneRef.value.createScene(sceneObj, index); + } + }; + + return { + sceneRef, + handleCreateSurvey } }, } diff --git a/src/views/Home/components/Header.vue b/src/views/Home/components/Header.vue index cac115fd..7c8917fe 100644 --- a/src/views/Home/components/Header.vue +++ b/src/views/Home/components/Header.vue @@ -8,7 +8,7 @@
diff --git a/src/views/Home/components/Operating.vue b/src/views/Home/components/Operating.vue index 763f5974..b893d903 100644 --- a/src/views/Home/components/Operating.vue +++ b/src/views/Home/components/Operating.vue @@ -5,7 +5,7 @@

创建、编辑、投放、分析,让洞察更简单

- +
@@ -14,9 +14,7 @@ {{index+1}} - - / - + {{operatingList.length}} @@ -35,6 +33,7 @@ + 立即体验
@@ -47,12 +46,13 @@
@@ -119,6 +134,7 @@ li{ } .operating-container{ margin-top: 20px; + margin-bottom: 60px; &>div:first-child { text-align: center; } @@ -130,7 +146,9 @@ li{ } .operating-item{ .progress{ - letter-spacing: -4px; + display: flex; + align-items: baseline; + letter-spacing: 1px; & :nth-child(1){ color: #70B937; font-size: 45px; diff --git a/src/views/Home/components/Scene.vue b/src/views/Home/components/Scene.vue index 895a734e..04d11e21 100644 --- a/src/views/Home/components/Scene.vue +++ b/src/views/Home/components/Scene.vue @@ -36,7 +36,9 @@
- + @@ -99,7 +101,9 @@ const getSceneList=()=>{ const createScene = (scene,index)=>{ if (index === 0 || index === 1 || index === 2){ if (createRef.value) { - createRef.value.createCustom(scene.value) + // 检查 scene 是否有 value 属性,如果没有则直接使用 scene + const sceneData = scene.value !== undefined ? scene.value : scene; + createRef.value.createCustom(sceneData) } }else{ if (createRef.value) { @@ -107,6 +111,27 @@ const createScene = (scene,index)=>{ } } } +/** + * 轮播图设置显隐 + * @param val + */ +const getValue = (val) => { + // 获取元素并转换为数组 + const containers = Array.from(document.getElementsByClassName('el-carousel__container')) + const indicators = Array.from(document.getElementsByClassName('el-carousel__indicators')) + const allElements = [...containers, ...indicators] + + allElements.forEach(item => { + if (item) { + item.style.zIndex = val ? '-1' : 'unset' + } + }) +} + +// 使用 defineExpose 显式暴露方法,使其可以被外部组件通过 ref 访问 +defineExpose({ + createScene +})