美文网首页
react Ace 编辑器,快捷键、代码提示

react Ace 编辑器,快捷键、代码提示

作者: ai_cuicui | 来源:发表于2019-06-19 16:42 被阅读0次

    react使用ace:

    1.安装命令
    npm install react-ace
    
    2.导入

    在使用ace 的组件中导入相关配置信息

    import AceEditor from 'react-ace';
    //language_tools语言工具,(这个好像是检测语法,有点忘了,想不起来从哪里找到的)
    import 'brace/ext/language_tools';
    //searchbox过滤框,快捷键ctrl+F
    import 'brace/ext/searchbox';
    //一下import的是编辑器支持的语法,我的项目都用到了,所以全部导入
    import 'brace/mode/javascript';//
    import 'brace/mode/html';//
    import 'brace/mode/java';//
    import 'brace/mode/python';//
    import 'brace/mode/lua';//
    import 'brace/mode/xml';//
    import 'brace/mode/ruby';//
    import 'brace/mode/sass';
    import 'brace/mode/markdown';//
    import 'brace/mode/mysql';
    import 'brace/mode/json';//
    import 'brace/mode/css';//
    import 'brace/mode/typescript';
    //以下import的是风格,还有好多种,可以根据自己需求导入
    // github、tomorrow、kuioir、twilight、xcode、textmeta、terminal、solarized-light、solarized-dark
    import 'brace/theme/monokai';//
    
    3.在render使用
    <AceEditor
        mode={this.state.mode}
        readOnly={this.state.readOnly}
        theme="monokai"
        name="app_code_editor"
        onChange={this.onChange}
        fontSize={fontSize}
        showPrintMargin
        showGutter
        highlightActiveLine  //突出活动线
        enableSnippets  //启用代码段
        value={this.state.editorContent}
        style={{width: '100%', height: this.state.deskHeight, minHeight: 600}}
        commands={[{    //命令是键绑定数组。
               name: 'saveFile', //键绑定的名称。
               bindKey: {win: 'Ctrl-S', mac: 'Command-S'}, //用于命令的组合键。
               exec: ()=>{
                      if (!this.state.changed) {
                              message.warning('文件未改动')
                      } else {
                              //保存文件操作
                      }
               }   //重新绑定命令的名称
        }]}
        setOptions={{
               enableBasicAutocompletion: false,   //启用基本自动完成功能
               enableLiveAutocompletion: true,   //启用实时自动完成功能 (比如:智能代码提示)
               enableSnippets: false,  //启用代码段
               showLineNumbers: true,
               tabSize: 4
         }}
     />
    
    4.快捷键绑定

    ctrl+F ctrl+H

    import 'brace/ext/searchbox';
    

    ctrl+S
    添加commands属性,看 3.在render中使用

    commands={[{    //命令是键绑定数组。
               name: 'saveFile', //键绑定的名称。
               bindKey: {win: 'Ctrl-S', mac: 'Command-S'}, //用于命令的组合键。
               exec: ()=>{
                      if (!this.state.changed) {
                              message.warning('文件未改动')
                      } else {
                              //保存文件操作
                      }
               }   //重新绑定命令的名称
        }]}
    
    如果有为您解决问题,请您点颗小心心~

    相关文章

      网友评论

          本文标题:react Ace 编辑器,快捷键、代码提示

          本文链接:https://www.haomeiwen.com/subject/itmkqctx.html