simple-draftjs v1.1.14
Simple Draft-js
Minimal wysiwyg rich editor using draftjs (Rich editor framework for React).
Demo
http://platzidev.github.io/simple-draftjs/
Install
npm i -S simple-draftjsHow to use?
import React from 'react';
import { render } from 'react-dom';
import Editor from 'simple-draftjs';
const buttons = [
{ name: 'bold' },
{ name: 'italic' },
{ name: 'underline' },
{ name: 'separator' },
{ name: 'unordered-list' },
{ name: 'separator' },
{ name: 'image' },
{ name: 'link' },
{ name: 'unlink' },
{ name: 'separator' },
{ name: 'code' },
];
/** optional css icons:
const buttons = [
{ name: 'bold' },
{ name: 'italic' },
{ name: 'underline' },
{ name: 'separator' },
{ name: 'unordered-list', icon: 'icon-list' },
{ name: 'separator' },
{ name: 'image', icon: 'icon-image'},
{ name: 'link', icon: 'icon-link'},
{ name: 'unlink', icon: 'icon-unlink' },
{ name: 'separator' },
{ name: 'code', , icon: 'icon-code' },
];
**/
render(
<Editor
getContentAction={printHTML}
hideButtonAction={closeEditor}
placeholder={"do somenthing!"}
controls={controls}
/>,
document.getElementById('root')
);
function printHTML(content) {
console.log("func ok");
}
function closeEditor() {
console.log("close");
}Options
Options should be set via props
| Option (prop) | type | description | required |
|---|---|---|---|
| getContentAction | function | callback that return html or markdown content when "send" button is clicked or the state change | * |
| placeholder | string | Placeholder for empty editor | - |
| controls | array | list of elements to show as button options | - |
| export | stirng | Format for return. options: HTML, Markdown | - |
| messages | Object | text for buttons | - |
| inactive | boolean | block editor if it is true | - |
| inactiveStyle | object | CSS React object for inactive state | - |
| hideButtonAction | func | callback for 'cancel' button click event | - |
getContentAction (required)
function callback that return html or markdown content when "send" button is clicked or the state change
function getContent(content) {
console.log("html content", content); // <p>something</p>
}
<Editor getContentAction={getContent} />placeholder (optional)
string placeholder.
controls (optional)
array list of elements to show as button options Note: separator is the line for serparate items "|"
export default [
{ name: 'bold' },
{ name: 'italic' },
{ name: 'underline' },
{ name: 'separator' },
{ name: 'unordered-list' },
{ name: 'separator' },
{ name: 'image' },
{ name: 'link' },
{ name: 'unlink' },
{ name: 'separator' },
{ name: 'code' },
];
<Editor controls={controls} />export (optional)
option: "html", "markdown" default: "html"
messages (optional)
default:
messages: {
buttons: {
send: 'Send',
cancel: 'Cancel',
}
},How to Run?
npm install
npm start
open http://localhost:3002Contribute: https://github.com/jhta/simple-draftjs
Dependencies
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago