先贴代码
// 这里设置已经提交过的就不再能够修改, 由响应式变量isSubmit控制
<span ref="riskContent" :contenteditable="isSubmit ? 'false' : 'plaintext-only'">
{{ content }}
</span>
需要获取对应span中的文本时,只需要访问元素的innerHTML属性
const riskContent = ref(null);
() => {
// 一些逻辑
// submit()函数是我瞎编的,只为了演示一下如何使用
submit(riskContent.value.innerHTML);
}
对应的CSS样式如下,我用的less方式
.preview {
margin-top: 16px;
flex: 1;
width: 100%;
border: 1px solid #dcdfe6;
border-radius: 4px;
padding: 12px 2px 2px 16px;
display: flex;
flex-direction: column;
justify-content: flex-start;
overflow: auto;
span { // 这就是那个span
width: fit-content;
font-family: MiSans;
font-size: 14px;
font-weight: 400;
height: 24px;
line-height: 24px;
color: #363a44;
text-align: left;
white-space: pre-line;
border: none;
outline: none;
}
}