当前位置:首页 > React

使用react-quill如何获取文本

2026-01-25 22:52:32React

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

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

方法一:通过 onChange 事件获取

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

使用react-quill如何获取文本

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 获取内容:

使用react-quill如何获取文本

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 标签的纯文本处理方法:

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

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

相关文章

vue实现复制文本

vue实现复制文本

实现复制文本的方法 在Vue中实现复制文本功能可以通过以下几种方式实现,每种方法适用于不同的场景。 使用原生JavaScript的execCommand方法 虽然execCommand方法已逐渐被弃…

react性能如何

react性能如何

React 性能特点 React 通过虚拟 DOM(Virtual DOM)和高效的 diff 算法优化性能。虚拟 DOM 减少了直接操作真实 DOM 的开销,仅在必要时更新变化的部分。React 的…

react如何创建框架

react如何创建框架

React 创建框架的方法 React 本身是一个用于构建用户界面的 JavaScript 库,但可以通过多种方式创建框架或项目结构。以下是几种常见的方法: 使用 Create React App…

react如何添加图片

react如何添加图片

在React中添加图片的方法 使用import导入本地图片 将图片文件放在项目目录中(如src/assets),通过import语句引入后作为src属性值: import logo from './…

react如何实现混入

react如何实现混入

在React中实现混入(Mixin)功能可以通过以下几种方式实现,React官方已不推荐使用传统的React.createClass混入方式,但可通过高阶组件或自定义Hook替代。 高阶组件(HOC…

如何运行react项目

如何运行react项目

运行React项目的步骤 确保已安装Node.js(建议版本12或更高)和npm/yarn。若未安装,可从Node.js官网下载。 全局安装create-react-app脚手架工具(若已安装可跳过…