html部分<quill-editor :content="content" :options="editorOption" @change="onEditorChange($event)" /> <el-dialog class="link-dialog" title="网址" :visible.sync="visible" width="30%"> <el-form :model="form"> <el-form-item label="目标网址"> <el-input class="input-href" v-model="form.href"></el-input> </el-form-item> <el-form-item label="打开方式"> <el-select class="select-target" v-model="form.target"> <el-option v-for="item in form.targetOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <el-button @click="visible = false">取消</el-button> <el-button id="confirm-btn" type="primary" @click="visible = false">确定</el-button> </div> </el-dialog>js部分class MyLink extends Link { static create(value) { let node = super.create(value) node.setAttribute('href', value) node.setAttribute('target', that.form.target) return node } } Quill.register(MyLink, true) // link 配置 link: function (value) { if (value) { that.visible = true var btn = document.getElementById('confirm-btn') btn.addEventListener('click', () => { this.quill.format('link', that.form.href) }) } else { this.quill.format('link', false) } },
html部分
js部分