vue codemirror

【这是一个代码编辑器插件】
1.【首先我们要先引入】
npm install vue-codemirror --save 【--save是为了多人开发时在pagejson中同步】
2.【然后我们下载完成后到组件中引入】
import { codemirror } from 'vue-codemirror'
require("codemirror/mode/javascript/javascript"); // 这里引入的模式的js,根据设置的mode引入,一定要引入!!
import 'codemirror/lib/codemirror.css'
import "codemirror/theme/ambiance.css"; // 这里引入的是主题样式,根据设置的theme的主题引入,一定要引入!!
import 'codemirror/mode/htmlmixed/htmlmixed'
import 'codemirror/mode/javascript/javascript'
import 'codemirror/theme/monokai.css'
3.【以上最好全部引入 这样风格才不会报错 黑色风格在缺少对应css会有问题】
4.【在js中 引入组件 components:{codemirror}】
5.【在data中写 入参数对象】
cmOptions:{
value:'',
mode:"text/javascript",//text/javascript
theme: "ambiance",//主题风格
lineNumbers: true,//显示行号

            }

6.html中写

<codemirror ref="mycode"
:model="dataSourceArrForm.dataSourceSql"
:options="cmOptions"
@changes="changes"
class="code">
</codemirror>
完成 可以了
以上可以完成了需求
那么格式化sql 怎么办呢
import sqlFormatter from "sql-formatter";
需要引入这个【npm下载哟 】
npm install --save sql-formatter
【下载完成后有很多时候 项目起不来 因为依赖没获取到 需要删除modules再下载一次就好了】
import 'codemirror/mode/sql/sql.js' //我主要是想高亮sql语句,如果是其他的语言,则引入相应的js
【编辑器默认给出的高度是300】
改变高度需要改变他的两个类 并且在外层加个div 给外层div设置高度
.CodeMirror {
border: 1px solid #eee;
height: auto;
}

    .CodeMirror-scroll {
        height: auto;
        overflow-y: hidden;
        overflow-x: auto;
    }

var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
});
【editor.setSize('800px', '950px'); //设置代码框的长宽】
【editor.setValue(""); //给代码框赋值】
【editor.getValue(); //获取代码框的值】

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容