使用bower下载javascript
bower i codemirror
引入样式文件css
<link rel="stylesheet" type="text/css" href="bower_components/codemirror/lib/codemirror.css">
引入js文件html
<script type="text/javascript" src="bower_components/codemirror/lib/codemirror.js"></script> <script type="text/javascript" src="bower_components/codemirror/mode/javascript/javascript.js"></script> <script type="text/javascript" src="bower_components/codemirror/mode/xml/xml.js"></script> <script type="text/javascript" src="bower_components/codemirror/mode/htmlmixed/htmlmixed.js"></script> <script type="text/javascript" src="bower_components/codemirror/mode/css/css.js"></script>
文档结构vue
<div class="container"> <textarea class="marpad " tyle="width:70%;height:300px;" id="editor" > <!-- 放入编辑对应的文本 --> </textarea> </div>
初始化java
// mode: "text/javascript", // mode: "text/css" window.onload = function(){ var myCodeMirror = CodeMirror.fromTextArea(document.getElementById("editor"), { lineNumbers: true, mode: "text/html" }); }
下载vue-cli
npm i -S vue-codemirror
main.js中使用npm
// codemirror 引入和使用 import VueCodemirror from 'vue-codemirror' import 'codemirror/lib/codemirror.css' Vue.use(VueCodemirror)
.vue文件中使用编辑器
template部分,使用双向绑定的写法双向绑定
//v-model="infor.codeCss" 双向绑定的数据源 //:options="cssOptions" codemirror的配置项 <codemirror v-model="infor.codeCss" :options="cssOptions"></codemirror>
script部分code
//引入xml,html,css,js对应的js解析文件 import 'codemirror/mode/javascript/javascript.js' import 'codemirror/mode/css/css.js' import 'codemirror/mode/xml/xml.js' import 'codemirror/mode/htmlmixed/htmlmixed.js' // 引入主题样式文件 import 'codemirror/theme/monokai.css'
//Vue实例中设置配置项 data(){ return { infor:{ codeCss:'' }, cssOptions: { tabSize: 4, mode: 'text/css', theme: 'monokai', lineNumbers: true, line: true, } } }