当前位置:首页 > React

react如何安装ueditor

2026-02-26 08:51:00React

安装 UEditor 到 React 项目

在 React 项目中集成 UEditor(百度富文本编辑器)需要手动处理 UEditor 的依赖和配置,以下是具体步骤:

下载 UEditor 源码

从 UEditor 官方 GitHub 仓库或百度官网下载最新版本的 UEditor 源码。解压后,将整个文件夹(通常命名为 ueditor)放入 React 项目的 public 目录下,确保可以通过公共路径访问。

引入 UEditor 脚本

public/index.html 中直接引入 UEditor 的配置文件与核心脚本:

<script type="text/javascript" src="%PUBLIC_URL%/ueditor/ueditor.config.js"></script>
<script type="text/javascript" src="%PUBLIC_URL%/ueditor/ueditor.all.min.js"></script>

创建 React 组件封装 UEditor

新建一个 React 组件(如 UEditor.js),通过 useEffect 初始化 UEditor 实例:

import React, { useEffect, useRef } from 'react';

const UEditor = ({ id, config, onChange }) => {
  const editorRef = useRef(null);

  useEffect(() => {
    // 确保全局 UE 对象存在
    if (typeof window.UE !== 'undefined') {
      editorRef.current = window.UE.getEditor(id, config);
      // 监听内容变化
      editorRef.current.addListener('contentChange', () => {
        onChange?.(editorRef.current.getContent());
      });
    }
    return () => {
      // 组件卸载时销毁编辑器
      if (editorRef.current) editorRef.current.destroy();
    };
  }, [id, config]);

  return <script id={id} type="text/plain"></script>;
};

export default UEditor;

配置 UEditor 路径

ueditor.config.js 中修改服务器端请求的 URL 配置,确保与项目后端接口匹配:

window.UEDITOR_HOME_URL = '/ueditor/'; // 根据 public 路径调整
window.UEDITOR_SERVER_URL = 'http://your-backend-api/controller.php'; // 后端上传接口

使用组件

在父组件中调用 UEditor 并传入必要的参数:

import UEditor from './UEditor';

const App = () => {
  const handleContentChange = (content) => {
    console.log('编辑器内容:', content);
  };

  return (
    <UEditor 
      id="editor" 
      config={{ 
        initialFrameWidth: '100%',
        initialFrameHeight: 500,
      }} 
      onChange={handleContentChange} 
    />
  );
};

处理跨域上传(可选)

如果后端接口存在跨域问题,需在后端配置 CORS 或通过代理转发请求。例如,在 vite.config.js 中配置代理:

server: {
  proxy: {
    '/ueditor/controller.php': {
      target: 'http://your-backend-api',
      changeOrigin: true,
    },
  },
}

注意事项

  • UEditor 依赖全局 window.UE 对象,需确保脚本加载顺序正确。
  • 生产环境下需检查静态资源路径是否正确部署。
  • 若使用 TypeScript,需声明全局 UE 类型:
    declare global {
      interface Window {
        UE: any;
      }
    }

react如何安装ueditor

标签: reactueditor
分享给朋友:

相关文章

react中monent如何获取日期

react中monent如何获取日期

使用 Moment.js 获取当前日期 在 React 中通过 Moment.js 获取当前日期,可以直接调用 moment() 函数。它会返回包含当前日期和时间的 Moment 对象。 impo…

react如何安装

react如何安装

安装React的步骤 确保已安装Node.js(建议版本12或更高),可通过以下命令检查版本: node -v npm -v 使用Create React App快速搭建项目(推荐): npx c…

如何运行react

如何运行react

运行 React 项目的步骤 安装 Node.js 和 npm 确保系统已安装 Node.js(包含 npm)。可通过官网 Node.js 下载并安装最新稳定版本。安装完成后,验证版本: node…

如何构建react

如何构建react

构建 React 项目的步骤 安装 Node.js 和 npm 确保系统已安装 Node.js(包含 npm)。可通过命令行验证: node -v npm -v 使用 Create React Ap…

react 如何遍历

react 如何遍历

遍历数组 在React中遍历数组通常使用map方法,它会返回一个新的数组。map是处理数组并渲染列表元素的首选方法。 const items = ['Apple', 'Banana', 'Cherr…

react如何debugger

react如何debugger

调试 React 应用的方法 使用浏览器开发者工具进行调试 React 开发者工具(React DevTools)是调试 React 应用的必备工具。安装 Chrome 或 Firefox 扩展后,可…