jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
31 lines (30 loc) • 1.17 kB
TypeScript
import React from 'react';
import type CodeMirror from 'codemirror';
import 'codemirror/lib/codemirror.css';
export interface CodeMirrorEditorProps {
className?: string;
style?: any;
value?: string;
readOnly?: boolean;
onChange?: (value: string) => void;
onFocus?: (e: any) => void;
onBlur?: (e: any) => void;
editorFactory?: (dom: HTMLElement, cm: typeof CodeMirror, props?: any) => CodeMirror.Editor;
editorDidMount?: (cm: typeof CodeMirror, editor: CodeMirror.Editor) => void;
editorWillUnMount?: (cm: typeof CodeMirror, editor: CodeMirror.Editor) => void;
}
export declare class CodeMirrorEditor extends React.Component<CodeMirrorEditorProps> {
dom: React.RefObject<HTMLDivElement>;
editor?: CodeMirror.Editor;
toDispose: Array<() => void>;
unmounted: boolean;
componentDidMount(): Promise<void>;
componentDidUpdate(prevProps: CodeMirrorEditorProps): void;
componentWillUnmount(): void;
handleChange(editor: any): void;
handleBlur(editor: any): void;
handleFocus(editor: any): void;
setValue(value?: string): void;
render(): JSX.Element;
}
export default CodeMirrorEditor;