|
@@ -1,15 +1,21 @@
|
|
<script lang="ts" setup>
|
|
<script lang="ts" setup>
|
|
import { ref, reactive, onMounted, inject, watchEffect, computed } from 'vue';
|
|
import { ref, reactive, onMounted, inject, watchEffect, computed } from 'vue';
|
|
import { storeToRefs } from 'pinia';
|
|
import { storeToRefs } from 'pinia';
|
|
-import { Props, Emits, optionsType } from './type';
|
|
|
|
|
|
+import { Emits, optionsType } from './type';
|
|
import { useStore } from '@/store/index'
|
|
import { useStore } from '@/store/index'
|
|
import { generateUniqueId } from '@/utils/tools'
|
|
import { generateUniqueId } from '@/utils/tools'
|
|
import { post, get, uploadFile } from "@/utils/request";
|
|
import { post, get, uploadFile } from "@/utils/request";
|
|
|
|
|
|
-const props = defineProps<Props>();
|
|
|
|
|
|
+const props = defineProps({
|
|
|
|
+ modelValue: { type: [String, Number, Array, Object, Boolean], required: true },
|
|
|
|
+ multiple: { type: Boolean, required: false, default: false },
|
|
|
|
+ size: { type: String as () => assemblySize, required: true, default: () => 'small' },
|
|
|
|
+ placeholder: { type: String, required: false, default: () => '请填写' },
|
|
|
|
+ disabled: { type: Boolean, required: false, default: false },
|
|
|
|
+ options: { type: Array as () => optionsType, required: false, default: () => [] },
|
|
|
|
+});
|
|
const emit = defineEmits<Emits>();
|
|
const emit = defineEmits<Emits>();
|
|
const { userInfo } = storeToRefs(useStore());
|
|
const { userInfo } = storeToRefs(useStore());
|
|
-const options = ref<optionsType>([]);
|
|
|
|
|
|
|
|
const timeRef = generateUniqueId()
|
|
const timeRef = generateUniqueId()
|
|
const controlTranslation = reactive({
|
|
const controlTranslation = reactive({
|
|
@@ -39,10 +45,11 @@ console.log(props, userInfo, '<==== 看看数据')
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<template>
|
|
<template>
|
|
- <!-- <el-select v-model="selectedValue" :ref="`selectRef${timeRef}`" :multiple="multiple ? true : false" :size="size ? size : ''" :placeholder="placeholder ? placeholder : '请输入'"
|
|
|
|
- :disabled="disabled ? true : false" clearable collapse-tags @change="updateValue" @visible-change="visibleChange">
|
|
|
|
|
|
+ <el-select v-model="selectedValue" :ref="`selectRef${timeRef}`" :multiple="multiple" :size="size"
|
|
|
|
+ :placeholder="placeholder" :disabled="disabled" clearable collapse-tags @change="updateValue"
|
|
|
|
+ @visible-change="visibleChange">
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
|
- </el-select> -->
|
|
|
|
|
|
+ </el-select>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<style lang="scss" scoped></style>
|
|
<style lang="scss" scoped></style>
|