123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- <!-- @format -->
- <script lang="ts" setup>
- import { ArrowDown } from '@element-plus/icons-vue'
- import { useCommonStore } from '@/stores/modules/common'
- const router = useRouter()
- const commonStore = useCommonStore()
- const { navigateTextColor } = storeToRefs(commonStore)
- const catalogsVisible = ref<boolean>(false)
- const resourceVisible = ref<boolean>(false)
- const aboutVisible = ref<boolean>(false)
- function toCategories() {
- router.push('/categories')
- }
- </script>
- <template>
- <div class="flex gap-80px">
- <NuxtLink
- to="/solutions"
- class="hover:text-#9B6CFF cursor-pointer"
- :style="{
- color: navigateTextColor,
- }"
- >
- Solutions
- </NuxtLink>
- <el-dropdown
- popper-class="custom-navigate-dropdown no-dropdown"
- @visible-change="(visible) => (catalogsVisible = visible)"
- >
- <span
- class="el-dropdown-link text-16px flex items-center"
- :class="[{ '!text-#9B6CFF': catalogsVisible }]"
- :style="{
- color: navigateTextColor,
- }"
- @click.stop="toCategories"
- >
- Catalogs
- <el-icon
- class="el-icon--right custom-arrow"
- :class="catalogsVisible ? 'custom-arrow-up' : 'custom-arrow-down'"
- >
- <ArrowDown class="text-14px" />
- </el-icon>
- </span>
- </el-dropdown>
- <el-dropdown
- popper-class="custom-navigate-dropdown "
- @visible-change="(visible) => (resourceVisible = visible)"
- >
- <span
- class="el-dropdown-link text-16px flex items-center"
- :class="[{ '!text-#9B6CFF': resourceVisible }]"
- :style="{
- color: navigateTextColor,
- }"
- >
- Resources
- <el-icon
- class="el-icon--right custom-arrow"
- :class="resourceVisible ? 'custom-arrow-up' : 'custom-arrow-down'"
- >
- <ArrowDown class="text-14px" />
- </el-icon>
- </span>
- <template #dropdown>
- <el-dropdown-menu>
- <el-dropdown-item>
- <NuxtLink to="/blog">
- Blog
- </NuxtLink>
- </el-dropdown-item>
- <el-dropdown-item>
- <NuxtLink to="/faq">
- FAQ
- </NuxtLink>
- </el-dropdown-item>
- </el-dropdown-menu>
- </template>
- </el-dropdown>
- <el-dropdown
- popper-class="custom-navigate-dropdown"
- @visible-change="(visible) => (aboutVisible = visible)"
- >
- <span
- class="el-dropdown-link text-16px flex items-center"
- :class="[{ '!text-#9B6CFF': aboutVisible }]"
- :style="{
- color: navigateTextColor,
- }"
- >
- About
- <el-icon
- class="el-icon--right custom-arrow"
- :class="aboutVisible ? 'custom-arrow-up' : 'custom-arrow-down'"
- >
- <ArrowDown class="text-14px" />
- </el-icon>
- </span>
- <template #dropdown>
- <el-dropdown-menu>
- <el-dropdown-item>
- <NuxtLink to="/about-us">
- About Us
- </NuxtLink>
- </el-dropdown-item>
- <el-dropdown-item>
- <NuxtLink to="/contact">
- Contact Us
- </NuxtLink>
- </el-dropdown-item>
- </el-dropdown-menu>
- </template>
- </el-dropdown>
- </div>
- </template>
- <style lang="less" scoped>
- .custom-arrow {
- transition: all 0.3s ease-in-out;
- }
- .custom-arrow-up {
- transform: rotate(180deg);
- }
- .custom-arrow-down {
- transform: rotate(0deg);
- }
- </style>
- <style>
- .custom-navigate-color {
- color: #fff;
- }
- </style>
|