Code Monkey home page Code Monkey logo

wrap-md-editor's Introduction

React Component Based on Editor.md

The html template should includes the following tags.

css
<link rel="stylesheet" href="https://s0.meituan.net/xm/open-platform-static/editormd/css/editormd.css" />
js
<script src="//s0.meituan.net/xm/static/jquery/1.11.3/jquery.min.js"></script>
<script src="https://s0.meituan.net/xm/open-platform-static/editormd/editormd.js"></script>

Install

npm install wrap-md-editor -S

Example

the edit mode

import React, {Component} from 'react';
import {render} from 'react-dom';
import Editor from 'wrap-md-editor';

render(
    <Editor config={
        {
            markdown: // testEditor.getMarkdown().replace(/`/g, '\\`')
            `## Test
            \`\`\`
            console.log('what can i do for you')
            \`\`\`
            
            # 123123`,
            onload: (editor, func) => {
                let md = editor.getMarkdown();
                let html = editor.getHTML();
                debugger
            }
        }
    }/>,
    document.querySelector('#root')
);
the show mode

import React, {Component} from 'react';
import {render} from 'react-dom';
import Editor from 'wrap-md-editor';

render(
    <Editor.EditorShow config={
        {
            markdown: // testEditor.getMarkdown().replace(/`/g, '\\`')
            `## Test
            \`\`\`
            console.log('what can i do for you')
            \`\`\`
            
            # 123123`
        }
    }/>,
    document.querySelector('#root')
);

Doc

Read the document for detail.

wrap-md-editor's People

Stargazers

HolyChickBabe avatar  avatar Mehdi Rezaei avatar 王西迪 avatar Kishore avatar 李正 avatar  avatar qinxi avatar

Watchers

James Cloos avatar gongjiang avatar

wrap-md-editor's Issues

取消自动聚焦

有取消自动聚焦的方法吗,目前自动聚焦体验不是很好

onChange 可以在 onload 里实现

onload 里把 editor 用 setState 挂到根组件上。
就可以使用 this.state.editor.getMarkdown() 获取输入值了,setMarkdown() 之类方法同样可以调用
可以写一个保存按钮,点击执行一次 this.state.editor.getMarkdown() 就得到最新输入值了

重写 onChange 貌似行不通,但可以简单粗暴点,用 setInterval

editor.getMarkdown()的使用

真的很喜欢这款markdown编辑器,感谢楼主将它封装成可以在React版本中使用的组件。只是在使用的使用遇到一个问题:如何在其他函数里面获取到Editor的示例,从而使用getMarkdown或者其他方法。我的思路是这样,但是感觉应该有更好的方法

handleClick() {
        console.log(window.editor.getMarkdown());
 }
render() {
        return (
            <div>
                <Button type="primary" onClick={this.handleClick}>发布</Button>
                <Editor config={
                    {
                        markdown: '',
                        saveHTMLToTextarea: true,
                        onload: (editor, func) => {
                            window.editor = editor;
                        },
                    }
                }
                />
            </div>
        );
    }

Error on NPM Build

When I deploy my app, I get an error ---

Failed to minify the code from this file: 
 	./node_modules/wrap-md-editor/dist/index.js:89 

index.js:89 ---

let defaultConfig = {

NPM does not like ES6 here. 😿

System Details ---

$ node --version
v10.8.0
$ npm --version
6.2.0
$ nvm --version
0.33.11
$ yarn --version
1.3.2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.