zoukankan      html  css  js  c++  java
  • 在vue里使用codemirror的两种用法


    这是我自己做的一个左边点击对应的标题,右边显示相应代码的一个功能。代码显示这里用的是vue-codemirror插件。

    第一种用法:

    1、安装:npm install vue-codemirror --save
    2、在main.js中引入

    import VueCodeMirror from 'vue-codemirror'
    import 'codemirror/lib/codemirror.css'
    Vue.use(VueCodeMirror)
    

    3、在组件中使用

    import { codemirror } from 'vue-codemirror'
    import "codemirror/theme/ambiance.css";  // 这里引入的是主题样式,根据设置的theme的主题引入,一定要引入!!
    require("codemirror/mode/javascript/javascript"); // 这里引入的模式的js,根据设置的mode引入,一定要引入!!
    

    在组件中声明:

    components:{
          codemirror
     },
    

    html代码写法:

    <codemirror
          ref="mycode"
          :value="curCode"
          :options="cmOptions"
          class="code">
     </codemirror>
    

    data中cmOptions的配置,这里我写的比较简单,具体的配置项,可以去查官方文档

    curCode:'',
    cmOptions:{
        value:'',
         mode:"text/javascript",
        theme: "ambiance",
        readOnly:true,
     }
    

    第二种用法:

    第1步、第2步和第一种用法中的相同
    3、在组件中使用

    import CodeMirror from 'codemirror/lib/codemirror'
      import "codemirror/theme/ambiance.css";
      require("codemirror/mode/javascript/javascript");
    

    在组件中写法,要写在 mounted中:

     mounted(){
          this.editor = CodeMirror.fromTextArea(this.$refs.mycode, {
          mode:"text/javascript",
          theme: "ambiance",
          readOnly:true,
    },
    

    html代码写法:

    <textarea ref="mycode" class="codesql public_text" v-model="code"></textarea>
    

    在切换改变值的方法,需要用到setValue方法,而在第一种方式中直接改变v-model绑定的值就可以了

    changeCode(value){
      this.code = value;        
      this.editor.setValue(this.code);
    }
    
  • 相关阅读:
    关于书签(BookMark)操作;
    清理内存
    string系列操作1
    SQL临时表
    线程,临界区的研究
    Unix 纪元时间
    shell 模仿验证登陆密码
    delphi字符串中取数字
    delphi MD5加密,BASE64加解密
    delphi sendGetIntmessage、sendStructMessage、sendGetStructMessage和sendTextMessage函数的用法
  • 原文地址:https://www.cnblogs.com/fangnianqin/p/11416932.html
Copyright © 2011-2022 走看看