react editor
1.0.0
已經超過4年了...
現在,React-Editor返回了完全TS和React-Hooks的集成
npm i -S react-editor import { Editor } from 'react-editor'
let [ value , setValue ] = useState ( '' )
let ref = useRef ( )
ref . focus ( )
ref . insertText ( 'foo' )
ref . insertHTML ( '<img src="https://foo.bar/baz.png">' )
value = 'set content'
< Editor
ref = { ref }
placeholder = "Type message to send..."
className = { styles . editor }
value = { value }
onChange = { setValue }
/ > export interface EditorProps {
value ?: string ;
defaultValue ?: string ;
className ?: string ;
placeholder ?: string ;
allowInWebDrop ?: boolean ;
processHTML ?: ( html : string ) => string ;
processText ?: ( text : string ) => string ;
onFocus ?: ( e : React . FocusEvent < HTMLDivElement > ) => void ;
onBlur ?: ( e : React . FocusEvent < HTMLDivElement > ) => void ;
onDrop ?: ( e : React . DragEvent < HTMLDivElement > ) => void ;
onPaste ?: ( e : React . ClipboardEvent < HTMLDivElement > ) => void ;
onChange ?: ( value : string ) => void ;
[ restProp : string ] : any ; // onto <div>
}
export interface EditorRefAttrs {
focus : ( ) => void ;
insertHTML : ( html : string ) => void ;
insertText : ( text : string ) => void ;
}用於UMD / <script>用法
< script src =" https://unpkg.com/react " > </ script >
< script src =" https://unpkg.com/react-dom " > </ script >
< script src =" https://unpkg.com/react-editor " > </ script >
< script src =" myapp.js " > </ script > // myapp.js
let React = window . React ;
let ReactDOM = window . ReactDOM ;
let { Editor } = window . ReactEditor ;
ReactDOM . render ( < Editor /> , mountNode ) ;對於React <16.8,我們需要掛鉤polyfill解決方法
// todo用於React-編輯遺產版本
npm i -S [email protected]該項目用Create-React-library&React-Ts-Demo進行了引導。