insertText(insertTxt) {
    // 获取el-input中的input元素
    let elInput = this.$refs.targetIn.$el.firstElementChild;
    // 获取el-input的值
    let txt = elInput.value;
    // 做插入前做长度校验(如果有这个需要的话)
    if (txt.length + value.length > 64) {
        return;
    }
    // 获取选区开始位置
    let startPos = elInput.selectionStart;
    // 获取选区结束位置
    let endPos = elInput.selectionEnd;
    if (startPos === undefined || endPos === undefined) return;

    // 将文本插入光标位置
    this.subject = txt.substring(0, startPos) + insertTxt + txt.substring(endPos);
    // 将光标移至文本末尾
    elInput.focus();
    elInput.selectionStart = startPos + insertTxt.length;
    elInput.selectionEnd = startPos + insertTxt.length;
}

 

Logo

前往低代码交流专区

更多推荐