当前位置:首页 > React

使用react-quill如何获取文本

2026-01-25 22:52:32React

获取 React-Quill 编辑器文本内容

使用 react-quill 获取编辑器中的文本内容可以通过以下几种方法实现:

方法一:通过 onChange 事件获取

在组件中绑定 onChange 事件处理器,当编辑器内容变化时获取当前值:

import React, { useState } from 'react';
import ReactQuill from 'react-quill';

function Editor() {
  const [content, setContent] = useState('');

  const handleChange = (value) => {
    setContent(value);
    console.log('当前内容:', value); // 获取纯文本
  };

  return <ReactQuill value={content} onChange={handleChange} />;
}

方法二:通过 ref 直接访问编辑器实例

使用 ref 获取编辑器实例后,调用其 API 获取内容:

import React, { useRef } from 'react';
import ReactQuill from 'react-quill';

function Editor() {
  const quillRef = useRef(null);

  const getText = () => {
    const editor = quillRef.current.getEditor();
    console.log('HTML内容:', editor.root.innerHTML);
    console.log('纯文本:', editor.getText());
  };

  return (
    <>
      <ReactQuill ref={quillRef} />
      <button onClick={getText}>获取内容</button>
    </>
  );
}

方法三:获取 Delta 格式内容

需要获取操作记录时可以使用 Delta 格式:

const getDeltaContent = () => {
  const editor = quillRef.current.getEditor();
  console.log('Delta内容:', editor.getContents());
};

注意事项

  1. 如果只需要纯文本,建议使用 editor.getText() 而非直接获取 HTML
  2. 内容包含 HTML 标签时,editor.root.innerHTML 会返回带格式的 HTML 字符串
  3. 在表单提交时,直接使用绑定的状态变量即可获取最新内容
  4. 动态设置内容时需通过 value 属性而非直接操作 DOM

内容处理示例

获取内容后去除 HTML 标签的纯文本处理方法:

使用react-quill如何获取文本

const getPlainText = (html) => {
  const temp = document.createElement('div');
  temp.innerHTML = html;
  return temp.textContent || temp.innerText || '';
};

标签: 文本react
分享给朋友:

相关文章

如何优化react

如何优化react

优化 React 性能的方法 使用 React.memo 进行组件记忆 React.memo 是一个高阶组件,用于缓存函数组件的渲染结果,避免不必要的重新渲染。只有当组件的 props 发生变化时,才…

react native如何启动

react native如何启动

如何启动 React Native 项目 安装 Node.js 和 npm 确保已安装 Node.js(建议版本 16 或更高)和 npm(Node.js 自带)。可通过以下命令检查版本: node…

如何手写一个react

如何手写一个react

手写一个简单的 React 创建一个基础的 React 实现需要理解其核心概念:虚拟 DOM、组件、状态管理和渲染。以下是一个简化版的 React 实现。 创建虚拟 DOM 虚拟 DOM 是真实 D…

react如何发音

react如何发音

React的发音 React的正确发音为 /riˈækt/,类似于“ree-akt”。以下是详细说明: 发音分解 第一个音节“Ree”发音类似英文单词“see”中的“ee”音。 第二个音节…

react如何同步

react如何同步

React 同步状态管理方法 在 React 中实现同步状态管理,可以通过以下多种方式实现: 使用 useState 和 useEffect 钩子 通过 useState 定义状态,使用 useEf…

react如何重启

react如何重启

重启 React 应用的方法 重新加载当前页面 使用 window.location.reload() 强制刷新页面,这会重新加载整个应用并重置所有状态。 window.location.rel…