mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 08:13:44 +08:00 
			
		
		
		
	@@ -1,51 +1,52 @@
 | 
			
		||||
<template>
 | 
			
		||||
  <div>
 | 
			
		||||
    <template v-for="(item, index) in options">
 | 
			
		||||
      <template v-if="values.includes(item.dictValue)">
 | 
			
		||||
        <span
 | 
			
		||||
          v-if="item.listClass == 'default' || item.listClass == ''"
 | 
			
		||||
          :key="item.dictValue"
 | 
			
		||||
          :index="index"
 | 
			
		||||
          :class="item.cssClass"
 | 
			
		||||
          >{{ item.dictLabel }}</span
 | 
			
		||||
        >
 | 
			
		||||
        <el-tag
 | 
			
		||||
          v-else
 | 
			
		||||
          :key="item.dictValue"
 | 
			
		||||
          :index="index"
 | 
			
		||||
          :type="item.listClass == 'primary' ? '' : item.listClass"
 | 
			
		||||
          :class="item.cssClass"
 | 
			
		||||
        >
 | 
			
		||||
          {{ item.dictLabel }}
 | 
			
		||||
        </el-tag>
 | 
			
		||||
      </template>
 | 
			
		||||
    </template>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
  name: "DictTag",
 | 
			
		||||
  props: {
 | 
			
		||||
    options: {
 | 
			
		||||
      type: Array,
 | 
			
		||||
      default: null,
 | 
			
		||||
    },
 | 
			
		||||
    value: [Number, String, Array],
 | 
			
		||||
  },
 | 
			
		||||
  computed: {
 | 
			
		||||
    values() {
 | 
			
		||||
      if (this.value !== null && typeof this.value !== 'undefined') {
 | 
			
		||||
        return Array.isArray(this.value) ? this.value : [String(this.value)];
 | 
			
		||||
      } else {
 | 
			
		||||
        return [];
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
  },
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
<style scoped>
 | 
			
		||||
.el-tag + .el-tag {
 | 
			
		||||
  margin-left: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
<template>
 | 
			
		||||
  <div>
 | 
			
		||||
    <template v-for="(item, index) in options">
 | 
			
		||||
      <template v-if="values.includes(item.dictValue)">
 | 
			
		||||
        <span
 | 
			
		||||
          v-if="item.listClass == 'default' || item.listClass == ''"
 | 
			
		||||
          :key="item.dictValue"
 | 
			
		||||
          :index="index"
 | 
			
		||||
          :class="item.cssClass"
 | 
			
		||||
          >{{ item.dictLabel }}</span
 | 
			
		||||
        >
 | 
			
		||||
        <el-tag
 | 
			
		||||
          v-else
 | 
			
		||||
          :disable-transitions="true"
 | 
			
		||||
          :key="item.dictValue"
 | 
			
		||||
          :index="index"
 | 
			
		||||
          :type="item.listClass == 'primary' ? '' : item.listClass"
 | 
			
		||||
          :class="item.cssClass"
 | 
			
		||||
        >
 | 
			
		||||
          {{ item.dictLabel }}
 | 
			
		||||
        </el-tag>
 | 
			
		||||
      </template>
 | 
			
		||||
    </template>
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
export default {
 | 
			
		||||
  name: "DictTag",
 | 
			
		||||
  props: {
 | 
			
		||||
    options: {
 | 
			
		||||
      type: Array,
 | 
			
		||||
      default: null,
 | 
			
		||||
    },
 | 
			
		||||
    value: [Number, String, Array],
 | 
			
		||||
  },
 | 
			
		||||
  computed: {
 | 
			
		||||
    values() {
 | 
			
		||||
      if (this.value !== null && typeof this.value !== 'undefined') {
 | 
			
		||||
        return Array.isArray(this.value) ? this.value : [String(this.value)];
 | 
			
		||||
      } else {
 | 
			
		||||
        return [];
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
  },
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
<style scoped>
 | 
			
		||||
.el-tag + .el-tag {
 | 
			
		||||
  margin-left: 10px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user