whistle-editor 编辑器的 React 组件

发布于 2021-11-25 22:10:34 字数 2080 浏览 1134 评论 0

本模块是 whistle 编辑器的 React 组件,可以作为 whistle 规则及其 Values 编辑器。

安装

npm i -D whistle-editor

用法

import React from 'react';
import ReactDOM from 'react-dom';
import Editor from 'whistle-editor';

const plugins = {
  'whistle.test': 'http://123',
  share: 0,
};

const onChange = (e) => {
  console.log(e.getValue());
};

const editor = (
  <Editor
    value="test"
    fontSize="16px"
    theme="monokai"
    lineNumbers
    onChange={onChange}
    className="test-class"
    mode="rules"
    plugins={plugins}
  />
);

ReactDOM.render(editor, document.getElementById('root'));

其中可设属性:

1、className: 组件样式

2、mode: 编辑器类型,默认 txt 类型,可设类型:rules、html、js (pac|jsx|json)、css、md、html

3、plugins: 添加插件名称及帮助文档链接,用于编辑器书写规则时自动提醒

const plugins = {
  test: 'http://xxxx',
  test2: {
    homepage: 'http://xxxx',
    hintList: ['1', '2', '3'] | function,
    pluginVars: true | { hintList: ['1', '2', '3'] | function}
  },
  ...
};

4、value: 设置编辑器默认值

5、onChange: 内容改变时触发

const onChange = (e) => {
  console.log(e.getValue());
};

6、theme: 编辑器主题,默认为 cobalt,可选:

default
neat
elegant
erlang-dark
night
monokai
cobalt
eclipse
rubyblue
lesser-dark
xq-dark
xq-light
ambiance
blackboard
vibrant-ink
solarized
dark
solarized
light
twilight
midnight

7、fontSize: 字体大小,默认 14px

8、lineNumbers: true | false,是否显示行数,默认为 false

开发

执行命令构建:

npm run dev

构建完成,用 Chrome 浏览器打开 dist/test.html 即可看到效果,修改代码后手动重新刷新页面即可。

发布

执行命令构建:

npm run dist

构建完成,执行发布命令:

npm publish

项目地址:https://github.com/avwo/whistle-editor

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

文章
评论
84963 人气
更多

推荐作者

微信用户

文章 0 评论 0

小情绪

文章 0 评论 0

ゞ记忆︶ㄣ

文章 0 评论 0

笨死的猪

文章 0 评论 0

彭明超

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文