如何在 QuillJS (React) 中关闭拼写检查
How turn off spell check in QuillJS (React)
如何在 React quill.js 中关闭拼写检查?
我发现 this GitHub page 显示了如何在正常情况下禁用 quill 的拼写检查器 JavaScript:
const quill = new Quill('#editor-container')
quill.root.setAttribute('spellcheck', false)
但是,我看不到如何使用 React 组件实现它。
我的 React 组件(实际上是 Preact):
import { h, FunctionalComponent } from 'preact';
import './contentEditor.scss';
import Quill from 'react-quill';
import 'react-quill/dist/quill.snow.css';
interface ContentEditorProps {
content: string | undefined;
onChange(value: string): void;
}
const modules = {
toolbar: [
[{ header: [1, 2, 3, 4, false] }],
['bold', 'italic', 'underline', 'blockquote'],
[{ color: [] }],
[{ align: [] }],
[{ list: 'ordered' }, { list: 'bullet' }],
[{ indent: '-1' }, { indent: '+1' }],
['link', 'image'],
],
};
const formats = [
'header',
'bold',
'color',
'italic',
'underline',
'strike',
'blockquote',
'list',
'bullet',
'align',
'indent',
'link',
'image',
];
export const ContentEditor: FunctionalComponent<ContentEditorProps> = ({
content,
onChange,
}) => {
return (
<Quill
theme='snow'
value={content}
onChange={onChange}
modules={modules}
formats={formats}
/>
);
};
为了访问 Quill
编辑器,您必须为 <Quill />
组件创建一个 ref
,然后使用它来设置属性。这是代码片段:
// For typings
import Quill from "react-quill";
import QuillEditor from "quill"
export const ContentEditor = ({ content, onChange }) => {
const ref = React.useRef<Quill & { editor: QuillEditor }>(null);
// Disable spellcheck as component is mounted
React.useEffect(() => {
ref.current?.editor.root.setAttribute("spellcheck", "false");
}, []);
return (
<Quill
// set the ref to access to quill editor
ref={ref}
theme="snow"
value={content}
onChange={onChange}
modules={modules}
formats={formats}
/>
);
};
我也做了样例:https://codesandbox.io/s/stoic-mendel-4g3jw?file=/src/App.js
如何在 React quill.js 中关闭拼写检查?
我发现 this GitHub page 显示了如何在正常情况下禁用 quill 的拼写检查器 JavaScript:
const quill = new Quill('#editor-container')
quill.root.setAttribute('spellcheck', false)
但是,我看不到如何使用 React 组件实现它。
我的 React 组件(实际上是 Preact):
import { h, FunctionalComponent } from 'preact';
import './contentEditor.scss';
import Quill from 'react-quill';
import 'react-quill/dist/quill.snow.css';
interface ContentEditorProps {
content: string | undefined;
onChange(value: string): void;
}
const modules = {
toolbar: [
[{ header: [1, 2, 3, 4, false] }],
['bold', 'italic', 'underline', 'blockquote'],
[{ color: [] }],
[{ align: [] }],
[{ list: 'ordered' }, { list: 'bullet' }],
[{ indent: '-1' }, { indent: '+1' }],
['link', 'image'],
],
};
const formats = [
'header',
'bold',
'color',
'italic',
'underline',
'strike',
'blockquote',
'list',
'bullet',
'align',
'indent',
'link',
'image',
];
export const ContentEditor: FunctionalComponent<ContentEditorProps> = ({
content,
onChange,
}) => {
return (
<Quill
theme='snow'
value={content}
onChange={onChange}
modules={modules}
formats={formats}
/>
);
};
为了访问 Quill
编辑器,您必须为 <Quill />
组件创建一个 ref
,然后使用它来设置属性。这是代码片段:
// For typings
import Quill from "react-quill";
import QuillEditor from "quill"
export const ContentEditor = ({ content, onChange }) => {
const ref = React.useRef<Quill & { editor: QuillEditor }>(null);
// Disable spellcheck as component is mounted
React.useEffect(() => {
ref.current?.editor.root.setAttribute("spellcheck", "false");
}, []);
return (
<Quill
// set the ref to access to quill editor
ref={ref}
theme="snow"
value={content}
onChange={onChange}
modules={modules}
formats={formats}
/>
);
};
我也做了样例:https://codesandbox.io/s/stoic-mendel-4g3jw?file=/src/App.js