|
@@ -1,12 +1,11 @@
|
|
<template>
|
|
<template>
|
|
<div class="search d-flex align-center">
|
|
<div class="search d-flex align-center">
|
|
<div style="position: relative;">
|
|
<div style="position: relative;">
|
|
- <div class="jobBox d-flex pl-5" :class="{'drawer': drawer}" @click="drawer = !drawer">
|
|
|
|
|
|
+ <div class="jobBox d-flex pl-5" :class="{'drawer': drawer}" @click.stop="drawer = !drawer">
|
|
<span>职位类型</span>
|
|
<span>职位类型</span>
|
|
<span class="mdi mdi-chevron-down px-2" style="font-size: 18px;"></span>
|
|
<span class="mdi mdi-chevron-down px-2" style="font-size: 18px;"></span>
|
|
</div>
|
|
</div>
|
|
- <!-- <jobTypeCard v-if="drawer" style="position: absolute; top: 42px; left: 250px; height: 300px; width: 250px;"></jobTypeCard> -->
|
|
|
|
- <jobTypeCard class="jobTypeCardBox" v-if="drawer" search></jobTypeCard>
|
|
|
|
|
|
+ <jobTypeCard class="jobTypeCardBox" v-if="drawer" search @click.stop=""></jobTypeCard>
|
|
</div>
|
|
</div>
|
|
<v-text-field
|
|
<v-text-field
|
|
v-model="value"
|
|
v-model="value"
|
|
@@ -23,15 +22,25 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
|
|
+import { useSharedState } from '@/store/sharedState'
|
|
import jobTypeCard from './jobTypeCard.vue'
|
|
import jobTypeCard from './jobTypeCard.vue'
|
|
|
|
|
|
-import { ref } from 'vue';
|
|
|
|
|
|
+import { ref, watch } from 'vue';
|
|
|
|
|
|
defineOptions({ name:'personal-search'})
|
|
defineOptions({ name:'personal-search'})
|
|
|
|
|
|
const value = ref('')
|
|
const value = ref('')
|
|
let drawer = ref(false)
|
|
let drawer = ref(false)
|
|
|
|
|
|
|
|
+// 点击外部关闭职位下拉
|
|
|
|
+const sharedState = useSharedState()
|
|
|
|
+
|
|
|
|
+// 监听 layoutClickCount 变化
|
|
|
|
+watch(() => sharedState.layoutClickCount, () => {
|
|
|
|
+ // console.log('layoutClickCount', newValue)
|
|
|
|
+ if (drawer.value) drawer.value = false
|
|
|
|
+});
|
|
|
|
+
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|