作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
QuillJS 没有默认的撤销/重做按钮。我正在尝试将它们添加到工具栏。 Quill 有一个文件夹,其中保存了撤消/重做图标。在 node_modules 中,还有 undo() 和 redo() 函数。我对编码有点陌生,不知道如何访问这些东西并使它们工作。我正在使用 react 。到目前为止,这是我的代码:
import ReactQuill from 'react-quill';
import 'react-quill/dist/quill.snow.css';
import 'react-quill/dist/quill.bubble.css';
class QuillTextEditor extends Component {
constructor(props) {
super(props);
this.modules = {
toolbar: [
[{ 'header': [false, 1, 2, 3] }],
[{ 'align': [] }],
['bold', 'italic', 'underline',],
[{'list': 'ordered'}, {'list': 'bullet'}],
[{ 'indent': '-1'}, { 'indent': '+1' }],
[{ 'script': 'super' }, 'strike'],
[{ 'color': [] }, { 'background': [] }],
['link', 'image'],
]
};
this.formats = [
'header',
'align',
'bold', 'italic', 'underline',
'list', 'bullet',
'indent', 'indent',
'script', 'strike',
'color', 'background',
'link', 'image',
];
}
render() {
return (
<div>
<ReactQuill
theme="snow"
modules={this.modules}
formats={this.formats}
value={''}/>
</div>
</div>
);
}
}
export default QuillTextEditor;
最佳答案
@Loa 感谢您的所有帮助。我不得不将许多不同帖子的代码混合在一起,但是您的链接开始了查找所有帖子的过程。
以下是如何使 react-quill 撤消/重做工作:
在 render() 的 ReactQuill 组件中,添加:
<ReactQuill
...
ref={(el) => {this.reactQuillRef = el}}
.../>
var icons = Quill.import("ui/icons");
icons["undo"] = 'UNDO';
icons["redo"] = 'REDO';
this.modules = {
history: {
delay: 1000,
maxStack: 100,
userOnly: false
},
toolbar: {
container: [
['undo'],
['redo'],
...
],
handlers: {
'undo' : this.myUndo,
'redo' : this.myRedo,
}
}
myUndo = () => {
let myEditor = this.reactQuillRef.getEditor();
return myEditor.history.undo();
}
myRedo = () => {
let myEditor = this.reactQuillRef.getEditor();
return myEditor.history.redo();
}
关于reactjs - 如何在 Quill JS (react-quill) 中创建撤销/重做按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59555447/
我是一名优秀的程序员,十分优秀!