您好,登錄后才能下訂單哦!
這是我自己做的一個左邊點擊對應的標題,右邊顯示相應代碼的一個功能。代碼顯示這里用的是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); }
總結
以上所述是小編給大家介紹的vue使用codemirror的兩種用法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。