quill 获取指定delta对象在纯文本中的索引但是其内容会在纯文本中存在多个
时间: 2024-05-11 18:14:47 浏览: 112
可以使用Quill的getText()方法获取纯文本内容,再使用indexOf()方法查找指定delta对象的内容在纯文本中第一次出现的位置,如下所示:
```javascript
let delta = { ops: [{ insert: 'Hello World!' }] };
let quill = new Quill('#editor');
quill.setContents(delta);
let text = quill.getText();
let index = text.indexOf(delta.ops[0].insert);
console.log(index); // 输出:0
```
如果指定delta对象的内容在纯文本中存在多个,可以使用循环找到所有出现的位置,如下所示:
```javascript
let delta = { ops: [{ insert: 'Hello' }] };
let quill = new Quill('#editor');
quill.setContents(delta);
quill.insertText(quill.getLength(), 'Hello');
let text = quill.getText();
let index = [];
let pos = 0;
while ((pos = text.indexOf(delta.ops[0].insert, pos)) !== -1) {
index.push(pos);
pos += delta.ops[0].insert.length;
}
console.log(index); // 输出:[0, 5]
```
阅读全文