在vue项目中使用codemirror插件实现代码编辑器功能


Posted in Javascript onAugust 27, 2019

在vue项目中使用codemirror插件实现代码编辑器功能(代码高亮显示及自动提示),具体内容如下所示:

1、使用npm安装依赖

npm install --save codemirror;

2、在页面中放入如下代码

<template>
 <textarea ref="mycode" class="codesql" v-model="code" style="height:200px;width:600px;"></textarea>
</template>
<script>
import "codemirror/theme/ambiance.css";
import "codemirror/lib/codemirror.css";
import "codemirror/addon/hint/show-hint.css";
let CodeMirror = require("codemirror/lib/codemirror");
require("codemirror/addon/edit/matchbrackets");
require("codemirror/addon/selection/active-line");
require("codemirror/mode/sql/sql");
require("codemirror/addon/hint/show-hint");
require("codemirror/addon/hint/sql-hint");
 export default {
   name: "codeMirror",
  data () {
   return {
    code: '//按Ctrl键进行代码提示'
   }
  },
  mounted () {
   debugger
   let mime = 'text/x-mariadb'
   //let theme = 'ambiance'//设置主题,不设置的会使用默认主题
   let editor = CodeMirror.fromTextArea(this.$refs.mycode, {
    mode: mime,//选择对应代码编辑器的语言,我这边选的是数据库,根据个人情况自行设置即可
    indentWithTabs: true,
    smartIndent: true,
    lineNumbers: true,
    matchBrackets: true,
    //theme: theme,
    // autofocus: true,
    extraKeys: {'Ctrl': 'autocomplete'},//自定义快捷键
    hintOptions: {//自定义提示选项
     tables: {
      users: ['name', 'score', 'birthDate'],
      countries: ['name', 'population', 'size']
     }
    }
   })
   //代码自动提示功能,记住使用cursorActivity事件不要使用change事件,这是一个坑,那样页面直接会卡死
   editor.on('cursorActivity', function () {
    editor.showHint()
   })
  }
 }
</script>
<style>
.codesql {
  font-size: 11pt;
  font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif;
 }
</style>

3、话不多说,直接上图

在vue项目中使用codemirror插件实现代码编辑器功能

总结

以上所述是小编给大家介绍的在vue项目中使用codemirror插件实现代码编辑器功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
div层的移动及性能优化
Nov 16 Javascript
JS获取整个页面文档的实现代码
Dec 15 Javascript
jquery判断元素是否隐藏的多种方法
May 06 Javascript
JavaScript操作HTML元素和样式的方法详解
Oct 21 Javascript
easyui datebox 时间限制,datebox开始时间限制结束时间,datebox截止日期比起始日期大的实现代码
Jan 12 Javascript
浅谈Vue SSR 的 Cookies 问题
Nov 20 Javascript
详解vue-cli项目中怎么使用mock数据
May 29 Javascript
值得收藏的八个常用的js正则表达式
Oct 19 Javascript
详解项目升级到vue-cli3的正确姿势
Jan 28 Javascript
vue - vue.config.js中devServer配置方式
Oct 30 Javascript
JS前端广告拦截实现原理解析
Feb 17 Javascript
js实现拖拽元素选择和删除
Aug 25 Javascript
vue使用codemirror的两种用法
Aug 27 #Javascript
微信小程序中为什么使用var that=this
Aug 27 #Javascript
JS常见面试试题总结【去重、遍历、闭包、继承等】
Aug 27 #Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
Aug 27 #Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
Aug 27 #jQuery
JS多个表单数据提交下的serialize()应用实例分析
Aug 27 #Javascript
解决Vue中 父子传值 数据丢失问题
Aug 27 #Javascript
You might like
smarty实例教程
2006/11/19 PHP
php 什么是PEAR?(第三篇)
2009/03/19 PHP
php 面试碰到过的问题 在此做下记录
2011/06/09 PHP
PHP中的str_repeat函数在JavaScript中的实现
2013/09/16 PHP
Laravel等框架模型关联的可用性浅析
2019/12/15 PHP
JavaScript语言中的Literal Syntax特性分析
2007/03/08 Javascript
javascript hasFocus使用实例
2010/06/29 Javascript
JQuery跨Iframe选择实现代码
2010/08/19 Javascript
node.js实现多图片上传实例
2014/06/03 Javascript
jQuery判断一个元素是否可见的方法
2015/06/05 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
JavaScript中的Number数字类型学习笔记
2016/05/26 Javascript
深入浅出 jQuery中的事件机制
2016/08/23 Javascript
JS实现图片延迟加载并淡入淡出效果的简单方法
2016/08/25 Javascript
JavaScript实现数组降维详解
2017/01/05 Javascript
bootstrap侧边栏圆点导航
2017/01/11 Javascript
关于vuex的学习实践笔记
2017/04/05 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
利用vue组件自定义v-model实现一个Tab组件方法示例
2017/12/06 Javascript
利用ES6实现单例模式及其应用详解
2017/12/09 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
2018/03/26 Javascript
vue实现输入框自动跳转功能
2020/05/20 Javascript
vue 数据双向绑定的实现方法
2021/03/04 Vue.js
在Python中操作字典之fromkeys()方法的使用
2015/05/21 Python
Python安装使用命令行交互模块pexpect的基础教程
2016/05/12 Python
pytorch中tensor的合并与截取方法
2018/07/26 Python
python机器学习之神经网络实现
2018/10/13 Python
浅谈pycharm的xmx和xms设置方法
2018/12/03 Python
python实现将range()函数生成的数字存储在一个列表中
2020/04/02 Python
Python读取yaml文件的详细教程
2020/07/21 Python
大二学期个人自我评价
2014/01/13 职场文书
关于建议书的格式范文
2014/05/20 职场文书
舌尖上的中国观后感
2015/06/02 职场文书
2016大学生求职自荐信范文
2016/01/28 职场文书
高一数学教学反思
2016/02/18 职场文书
使用CSS连接数据库的方式
2022/02/28 HTML / CSS