Nodejs 大家平常都用什么富文本编辑器?

Nodejs 大家平常都用什么富文本编辑器?

如题,有没有好的推荐一下,谢谢。 ckeditor 怎么样?

7 回复

Node.js 富文本编辑器推荐

大家好!最近在寻找一个适合Node.js项目的富文本编辑器,想听听大家的推荐。如果你们有好的经验或建议,欢迎分享!

CKEditor

CKEditor 是一个非常流行且功能强大的富文本编辑器。它不仅支持多种平台和浏览器,而且功能全面,可以满足大多数需求。下面是一个简单的使用示例:

  1. 安装CKEditor: 首先,你需要通过npm安装CKEditor。打开终端并运行以下命令:

    npm install --save [@ckeditor](/user/ckeditor)/ckeditor5-react [@ckeditor](/user/ckeditor)/ckeditor5-build-classic
    
  2. 集成到React项目中(假设你使用的是React框架): 在你的React组件中,你可以这样使用CKEditor:

    import React, { useState } from 'react';
    import CKEditor from '[@ckeditor](/user/ckeditor)/ckeditor5-react';
    import ClassicEditor from '[@ckeditor](/user/ckeditor)/ckeditor5-build-classic';
    
    const App = () => {
      const [content, setContent] = useState('');
    
      return (
        <div>
          <h1>使用CKEditor的示例</h1>
          <CKEditor
            editor={ClassicEditor}
            data="<p>请输入内容...</p>"
            onReady={editor => {
              console.log('Editor is ready to use!', editor);
            }}
            onChange={(event, editor) => {
              const data = editor.getData();
              setContent(data);
              console.log({ event, editor, data });
            }}
            onBlur={(event, editor) => {
              console.log('Blur.', editor);
            }}
            onFocus={(event, editor) => {
              console.log('Focus.', editor);
            }}
          />
          <p>当前输入的内容: {content}</p>
        </div>
      );
    };
    
    export default App;
    
  3. 配置CKEditor: 你可以根据需要对CKEditor进行配置。例如,添加自定义工具栏按钮或禁用某些功能。这里有一个简单的配置示例:

    const config = {
      toolbar: ['bold', 'italic', 'link'],
    };
    

    然后在<CKEditor>标签中添加config属性:

    <CKEditor
      editor={ClassicEditor}
      data="<p>请输入内容...</p>"
      config={config}
      // 其他属性...
    />
    

其他推荐

除了CKEditor,还有一些其他的富文本编辑器也值得考虑,比如TinyMCE、Quill等。这些编辑器也有各自的优点和特色。

希望这些信息对你有所帮助!如果你有其他推荐或使用体验,欢迎分享!


以上就是关于Node.js项目中使用的富文本编辑器的一些推荐和示例。希望大家能从中找到合适的解决方案。


同意一楼,我也是用的这个。

请问文件上传兼容手机吗?因为手机一般不支持FLASH。。。

UMeditor不错,好像是ueditor的升级版…

Flash插件初始化失败,请更新您的FlashPlayer版本之后重试!

kindeditor还可以吧

对于Node.js项目中的富文本编辑器,常用的有CKEditor、TinyMCE和Quill等。每种编辑器都有其特点,可以根据具体需求选择合适的。

CKEditor 示例

CKEditor 是一个功能强大的富文本编辑器,适用于各种Web应用。它支持自定义配置,并且易于集成到Node.js项目中。

安装CKEditor

你可以通过npm安装CKEditor:

npm install --save @ckeditor/ckeditor5-react
npm install --save @ckeditor/ckeditor5-build-classic

集成CKEditor

在你的React组件中集成CKEditor:

import React from 'react';
import { CKEditor } from '@ckeditor/ckeditor5-react';
import ClassicEditor from '@ckeditor/ckeditor5-build-classic';

const RichTextEditor = () => {
    const [content, setContent] = React.useState('');

    return (
        <div>
            <CKEditor
                editor={ClassicEditor}
                data={content}
                onReady={(editor) => {
                    console.log('Editor is ready to use!', editor);
                }}
                onChange={(event, editor) => {
                    const data = editor.getData();
                    setContent(data);
                    console.log({ event, editor, data });
                }}
                onBlur={(event, editor) => {
                    console.log('Blur.', editor);
                }}
                onFocus={(event, editor) => {
                    console.log('Focus.', editor);
                }}
            />
        </div>
    );
};

export default RichTextEditor;

TinyMCE 示例

TinyMCE 是另一个流行的富文本编辑器,功能丰富且配置灵活。

安装TinyMCE

npm install react-tinymce

集成TinyMCE

import React from 'react';
import tinymce from 'tinymce/tinymce';
import 'tinymce/themes/silver';
import 'tinymce/icons/default';
import 'tinymce/models/dom';
import 'tinymce/plugins/link';
import 'tinymce/plugins/image';
import 'tinymce/plugins/table';
import 'tinymce/plugins/code';
import 'tinymce/skins/ui/oxide/skin.css';
import Editor from 'react-tinymce';

const RichTextEditor = () => {
    const content = '<p>Hello World!</p>';

    return (
        <Editor
            config={{
                plugins: [
                    'link',
                    'image',
                    'table',
                    'code'
                ],
                toolbar: 'undo redo | bold italic | alignleft aligncenter alignright | table | code'
            }}
            content={content}
            onContentChange={(e) => {
                console.log(e.target.getContent());
            }}
        />
    );
};

export default RichTextEditor;

以上是CKEditor和TinyMCE的简单示例。你可以根据项目的具体需求选择合适的富文本编辑器。

回到顶部