This commit is contained in:
yuping
2022-12-08 02:05:56 +08:00
parent cd7ba1f674
commit 9c20c64649
3 changed files with 588 additions and 379 deletions

View File

@@ -1,17 +1,22 @@
<template> <template>
<a-select <template v-if="tag">
:getPopupContainer=" <div>{{ options?.find(e => e.value == id)?.label || '' }}</div>
</template>
<template v-else>
<a-select
:getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
v-model:value="id" v-model:value="id"
:options="options" :options="options"
style="width: 100%" style="width: 100%"
placeholder="请选择项目级别" placeholder="请选择项目级别"
@change="change" @change="change"
:disabled="disabled" :disabled="disabled"
/> />
</template>
</template> </template>
<script setup> <script setup>
import {computed, defineEmits, defineProps, onMounted, ref} from "vue"; import {computed, defineEmits, defineProps, onMounted, ref} from "vue";
@@ -21,7 +26,11 @@ import {useStore} from "vuex";
const store = useStore(); const store = useStore();
const props = defineProps({ const props = defineProps({
value: String, value: String,
disabled: String disabled: String,
tag: {
type: Boolean,
default: false
}
}) })
const id = computed(() => { const id = computed(() => {

View File

@@ -1,17 +1,23 @@
<template> <template>
<a-select <template v-if="tag">
:getPopupContainer=" <div>{{ options.find(e => e.value == id)?.label || '' }}</div>
</template>
<template v-else>
<a-select
:getPopupContainer="
(triggerNode) => { (triggerNode) => {
return triggerNode.parentNode || document.body; return triggerNode.parentNode || document.body;
} }
" "
v-model:value="id" v-model:value="id"
:options="options" :options="options"
style="width: 100%" style="width: 100%"
placeholder="请选择分类" placeholder="请选择分类"
@change="change" @change="change"
:disabled="disabled" :disabled="disabled"
/> />
</template>
</template> </template>
<script setup> <script setup>
import {computed, defineEmits, defineProps, onMounted, ref} from "vue"; import {computed, defineEmits, defineProps, onMounted, ref} from "vue";
@@ -21,7 +27,11 @@ const store = useStore();
const props = defineProps({ const props = defineProps({
value: String, value: String,
disabled: String disabled: String,
tag: {
type: Boolean,
default: false
}
}) })
const id = computed(() => { const id = computed(() => {

File diff suppressed because it is too large Load Diff