文本节点删除
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<!-- 结果图片 -->
|
<!-- 文字节点 -->
|
||||||
<div class="text" @mousedown="onMouseDown">
|
<div class="text" @mousedown="onMouseDown">
|
||||||
<div
|
<div
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
@@ -11,6 +11,9 @@
|
|||||||
@paste.prevent
|
@paste.prevent
|
||||||
@keydown.stop
|
@keydown.stop
|
||||||
></div>
|
></div>
|
||||||
|
<span class="delete" @mousedown.stop @click="emit('delete-node')" v-show="active">
|
||||||
|
<svg-icon name="close" size="7" size-unit="px" />
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -26,7 +29,7 @@
|
|||||||
default: () => ({})
|
default: () => ({})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
const emit = defineEmits(['update-data'])
|
const emit = defineEmits(['update-data', 'delete-node'])
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
text: props.data?.text || '点击编辑文本'
|
text: props.data?.text || '点击编辑文本'
|
||||||
})
|
})
|
||||||
@@ -70,6 +73,7 @@
|
|||||||
user-select: none;
|
user-select: none;
|
||||||
border: 1px solid transparent;
|
border: 1px solid transparent;
|
||||||
padding: 2px;
|
padding: 2px;
|
||||||
|
position: relative;
|
||||||
&.active {
|
&.active {
|
||||||
border-color: #000;
|
border-color: #000;
|
||||||
> .input {
|
> .input {
|
||||||
@@ -81,5 +85,15 @@
|
|||||||
min-width: 2px;
|
min-width: 2px;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
> .delete {
|
||||||
|
position: absolute;
|
||||||
|
top: 4px;
|
||||||
|
right: 4px;
|
||||||
|
transform: translate(100%, -100%);
|
||||||
|
background-color: #fff;
|
||||||
|
padding: 2px;
|
||||||
|
border-radius: 50%;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Reference in New Issue
Block a user