|
@@ -20,6 +20,7 @@
|
|
|
<i :class="tags && tags.length > 0 ? 'collectFill' : 'collect'" @click="handleShowAddTag" />
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div v-if="showFull" class="full-btn" @click="handleFull" />
|
|
|
<i class="decoration" />
|
|
|
<i class="dialog-close" @click="closeDialog" />
|
|
|
</div>
|
|
@@ -66,6 +67,8 @@ interface Props {
|
|
|
headerType?: string;
|
|
|
getTagId?: string;
|
|
|
draggable?: boolean;
|
|
|
+ showFull?: boolean;
|
|
|
+ fullScreen?: boolean;
|
|
|
}
|
|
|
const props = withDefaults(defineProps<Props>(), {
|
|
|
modelValue: false,
|
|
@@ -74,10 +77,13 @@ const props = withDefaults(defineProps<Props>(), {
|
|
|
confirmText: '确定',
|
|
|
hideFooter: false
|
|
|
});
|
|
|
+const full = ref(false);
|
|
|
const containerScale = inject('containerScale');
|
|
|
-const emit = defineEmits(['update:modelValue', 'close', 'confirm', 'changeTagsData']);
|
|
|
+const emit = defineEmits(['update:modelValue', 'close', 'confirm', 'changeTagsData', 'changeFull']);
|
|
|
const computedWidth = computed(() => {
|
|
|
- if (!!props.width) {
|
|
|
+ if (full.value || props.fullScreen) {
|
|
|
+ return '8960px';
|
|
|
+ } else if (!!props.width) {
|
|
|
return props.width;
|
|
|
} else if (props.type === 'xs') {
|
|
|
return '1080px';
|
|
@@ -92,7 +98,9 @@ const computedWidth = computed(() => {
|
|
|
}
|
|
|
});
|
|
|
const computedHeight = computed(() => {
|
|
|
- if (!!props.height) {
|
|
|
+ if (full.value || props.fullScreen) {
|
|
|
+ return '2520px';
|
|
|
+ } else if (!!props.height) {
|
|
|
return props.height;
|
|
|
} else if (props.type === 'xs') {
|
|
|
return '435px';
|
|
@@ -137,6 +145,10 @@ let showAddTag = ref(false);
|
|
|
const handleShowAddTag = () => {
|
|
|
showAddTag.value = true;
|
|
|
};
|
|
|
+const handleFull = () => {
|
|
|
+ full.value = !full.value;
|
|
|
+ emit('changeFull', full.value);
|
|
|
+};
|
|
|
const getData = (needUpdate?: boolean) => {
|
|
|
getVideoTagInfo({ video_code: props.getTagId }).then((res) => {
|
|
|
tags.value = res.data;
|
|
@@ -362,4 +374,15 @@ onMounted(() => {
|
|
|
display: flex;
|
|
|
flex-wrap: wrap;
|
|
|
}
|
|
|
+.full-btn {
|
|
|
+ position: absolute;
|
|
|
+ top: 20px;
|
|
|
+ right: 130px;
|
|
|
+ width: 34px;
|
|
|
+ height: 34px;
|
|
|
+ background: url('@/assets/images/video/enlarge.png') no-repeat;
|
|
|
+ background-size: 100% 100%;
|
|
|
+ cursor: pointer;
|
|
|
+ z-index: 9;
|
|
|
+}
|
|
|
</style>
|