1、安装
yarn add react-ace ace-builds
2、使用
import AceEditor from 'react-ace';
import 'ace-builds/src-noconflict/mode-golang';
import 'ace-builds/src-noconflict/theme-twilight';
const editorRef = useRef(null);
const fetchData = async () => {
try {
// api
// 需要手动设置值,组件的value不生效
editorRef?.current?.editor?.getSession().setValue(res?.result?.extend_script);
setExtendCode(res?.result?.extend_script);
} catch (err) {
console.warn('err:', err);
}
};
<AceEditor
name="ace-editor"
mode="golang"
theme="twilight"
ref={editorRef}
value={extendCode}
onChange={(value: string) => setExtendCode(value)}
style={{ height: 600, width: '100%' }}
/>
3、效果