codeMirror是一款十分强大的代码编辑插件,提供了十分丰富的API,最近在项目中用到了这款插件,作一个记录。javascript
官网css
github地址vue
npm install --save codemirror
复制代码
<link href="./static/codemirror/lib/codemirror.css" rel="stylesheet" > // 必要
<script src="./static/codemirror/lib/codemirror.js"></script> // 必要
<script src="./static/codemirror/mode/sql/sql.js"></script> // 在线编辑的语言 sql
<script src="./static/codemirror/mode/sql/javscript.js"></script> // 在线编辑的语言 javascript
复制代码
import "codemirror/lib/codemirror.css" //必要
const CodeMirror = require("codemirror/lib/codemirror") // 必要
require("codemirror/mode/sql/sql") // 在线编辑的语言 sql
require('codemirror/addon/display/placeholder') // 须要使用placeholder属性
复制代码
<template>
<textarea placeholder="例如select * from table" ref="myCodeMirror"></textarea>
</template>
<script>
import "codemirror/lib/codemirror.css" //必要
const CodeMirror = require("codemirror/lib/codemirror") // 必要
require("codemirror/mode/sql/sql") // 在线编辑的语言 sql
require('codemirror/addon/display/placeholder') // 须要使用placeholder属性
export default {
...
mounted () {
this.myCodeMirror = CodeMirror.fromTextArea(this.$refs['myCodeMirror'], {
lineNumbers: true, // 是否显示行数
mode: 'text/x-pgsql', // 使用什么模式 text/x-pgsql是sql javascript等
showCursorWhenSelecting: true, // 当有选中的时候是否显示光标
extraKeys: {'Ctrl': 'autocomplete'} // 自定义快捷键
})
}
}
</script>
复制代码
this.myCodeMirror.getValue()
this.myCodeMirror.getSelection()
官网提供了十分丰富的API,当有什么问题是在github上提问,做者回复的也很快,很是好用,赞一个java