| | |
| | | </div> --> |
| | | </div> |
| | | |
| | | <div class="main" v-show="state.applicationScenarios && state.applicationScenarios.length < 3"> |
| | | <div class="main" v-show="state.applicationScenarios && state.applicationScenarios.length <= 3"> |
| | | <div class="flex flex-wrap items-center"> |
| | | <div |
| | | class="main_item flex cursor-pointer" |
| | | v-for="item in state.applicationScenarios" |
| | |
| | | :class="{ main_item_active: item.group_id === activeSectionAId }" |
| | | @click="changeScenarios(item)" |
| | | > |
| | | <div :class="['myiconfont icon-' + item.Icon]"></div> |
| | | <div :class="['ywifont ywicon-' + item.Icon]"></div> |
| | | |
| | | <div class="right"> |
| | | <h4>{{ item.group_name }}</h4> |
| | | <p>{{ item.group_title }}</p> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { computed, onMounted, reactive, ref } from 'vue'; |
| | | import { computed, reactive, ref, watch } from 'vue'; |
| | | import { getSectionList } from '/@/api/ai/chat'; |
| | | import router from '/@/router'; |
| | | import { activeSectionAId, sectionAList } from '/@/stores/chatRoom'; |
| | | import { activeGroupType, activeSectionAId, sectionAList } from '/@/stores/chatRoom'; |
| | | let state = reactive({ |
| | | applicationScenarios: [], |
| | | scenariosIds: [], |
| | |
| | | let result = []; |
| | | res.groups.forEach((sectionItem, index) => { |
| | | sectionItem.Icon = getIconByIndex(index); |
| | | if (activeGroupType.value == sectionItem.group_type) { |
| | | result.push(sectionItem); |
| | | } |
| | | }); |
| | | console.log('🚀 ~ result:', result); |
| | | state.applicationScenarios = result; |
| | | sectionAList.value = res.groups; |
| | | res.groups?.[0] && changeScenarios(res.groups[0]); |
| | | result?.[0] && changeScenarios(result[0]); |
| | | }; |
| | | const groupedArray = computed(() => { |
| | | const groups = []; |
| | |
| | | }, |
| | | }); |
| | | }; |
| | | onMounted(() => { |
| | | watch( |
| | | () => activeGroupType.value, |
| | | () => { |
| | | getMainSectionList(); |
| | | }); |
| | | }, |
| | | { immediate: true } |
| | | ); |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .pc-scenes { |