使用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, } } }