vue中显示原网页代码--codemirror
在项目中遇到了一个需求,后台返回string类型的html源码,要求前端这边按照codeview这种类型把这个源码展示出来。现总结如下
1.如果没啥样式的需求,只是要求该缩进缩进的话,可以直接使用innerText属性,然后给你这个包裹了html源码的div加上white-space:pre;就可以了。效果如下:
2.如果要求你的源码可以编辑并且按照codeview的那种主题样式展示可以使用codemirror插件
我是在vue中使用的
1.首先安装vue-codemirror
npm install vue-codemirror --save
2.在main.js中使用
import { codemirror } from 'vue-codemirror'
import 'codemirror/lib/codemirror.css'
import 'codemirror/theme/darcula.css' //这个是你设置了什么主题,就要对应的在main.js中引入主题的css
3.在对应的组件中使用
html部分
<codemirror
ref="myCm"
:value="resArr" //对应的值
:options="cmOptions" //对应的配置
class="code"
></codemirror> js部分
import { codemirror } from 'vue-codemirror'
require("codemirror/mode/python/python.js")
require('codemirror/addon/fold/foldcode.js')
require('codemirror/addon/fold/foldgutter.js')
require('codemirror/addon/fold/brace-fold.js')
require('codemirror/addon/fold/xml-fold.js')
require('codemirror/addon/fold/indent-fold.js')
require('codemirror/addon/fold/markdown-fold.js')
require('codemirror/addon/fold/comment-fold.js') cmOptions:{
value:'',
//mode:'text/html',//模式
theme:'darcula', //主题
indentUnit:2,
smartIndent:true,
tabSize:4,
readOnly:true, //只读
showCursorWhenSelecting:true,
lineNumbers:false, //是否显示行数
firstLineNumber:1
}, this.resArr = res;
效果:
注意:我们在使用的时候,想要高度自适应,这个时候需要在
codemirror/lib/codemirror.css 文件中将样式改为
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: auto;
color: black;
direction: ltr;
}
.CodeMirror-scroll {
height: auto;
overflow-y: hidden;
overflow-x: auto;
}
一些具体的配置信息,大家可以去搜搜,我这边只写了部分
vue中显示原网页代码--codemirror的更多相关文章
- div中显示某个网页
原文:div中显示某个网页 1.<iframe>方法 2.ajax方法 ajax+流实现无框架限制块刷新: 主框架index页面: js: $(function(){ $("#d ...
- 在word中显示漂亮的代码
在word中粘贴或写代码时,通常得不到想要的格式,可用‘Notepad++’工具实现. 步骤: (1)安装Notepad++软件,把代码粘贴进去,选择菜单栏中的语言,然后选择相应代码语言,如P-> ...
- 在html中显示Flash的代码
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://down ...
- Vue中拆分视图层代码的5点建议
目录 一.框架的定位 二. Vue开发中的script拆分优化 1.组件划分 2.剥离业务逻辑代码 3. 剥离数据转换代码 4. 善用computed和filters处理数据展示 5. 使用direc ...
- vue中显示静态图片怎么引用
有多种方法解决这个问题: 首先,如果使用的是img标签那么可以这样 data () { return { img: require('path/to/your/source') } } 然后在temp ...
- App中显示html网页
在现在的移动开发中,越来越多的web元素增加到了app里面,hybrid app可以综合native app 和 web app的长处,可以通过webView实现 htmllayout.xml: &l ...
- vue中显示markdown文件为html
1.安装插件 npm install marked -D npm install highlight.js -D npm install markdown-loader -D npm instal ...
- vue中显示和隐藏导航
const router = new VueRouter({ mode: 'history', routes: [ { path: '/first', component: firstView, me ...
- html网页代码各种名称及作用
基本Web页文件<HTML><HEAD><TITLE></TITLE></HEAD><BODY></BODY>< ...
随机推荐
- docker 私有registry harbor安装
一,harbor安装: 参考:Installation and Configuration Guide 1,安装docker 2,安装docker compose sudo curl -L " ...
- 一、itk在VS2019上面的安装 和例子(HelloWorld)运行
一.Itk简介 vtk是专门用于医疗图像处理的函数库,类似opencv. 这篇博客主要是讲解安装vtk之后的例子的运行,即如何构建自己的第一个ITK例子 二.Itk安装 Itk安装参考这篇博客: ht ...
- Python学习记录:括号配对检测问题
Python学习记录:括号配对检测问题 一.问题描述 在练习Python程序题的时候,我遇到了括号配对检测问题. 问题描述:提示用户输入一行字符串,其中可能包括小括号 (),请检查小括号是否配对正确, ...
- PKUWC/SC 做题笔记
去年不知道干了些啥,什么省选/营题都没做. 现在赶应该还来得及(?) 「PKUWC2018」Minimax Done 2019.12.04 9:38:55 线段树合并船新玩法??? \(O(n^2)\ ...
- 阿里小哥带你玩转JVM:揭秘try-catch-finally在JVM底层都干了些啥?
让我们准备一个函数: 然后,反编译他的字节码: 首先我们介绍异常表:在编译生成的字节码中,每个方法都附带一个异常表. 异常表中的每一个条目代表一个异常处理器,并且由 from 指针.to 指针 ...
- SQL Server字符串函数STUFF的使用
前言: 最近有个实践练习是将学生报名数据表student中的[st_id]字段的第二个和第三个字符删除,然后在此位置插入新的字符串“200900”,其实就是替换的意思,生成新的字符串. STUFF 函 ...
- python保存文字到文件中
使用encode方法即可,举例如下: #-*-coding:utf-8-*- def save(re, name): file = open("index_cut.txt", &q ...
- 10-scrapy框架介绍
Scrapy 入门教程 Scrapy 是用 Python 实现的一个为了爬取网站数据.提取结构性数据而编写的应用框架. Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. 通 ...
- struts2文件上传报错
说明上传的文件为空,检查上传文件名
- 最全各种系统版本的XPosed框架资料下载整理
由于XPosed在不同安卓系统版本中对应的版本不同,给很多新手造成极大困扰,本文作者经过几番努力,给大家整理了各个版本对应的xposed框架版本以及相关资料,并附上相关下载链接,希望对大伙有所帮助. ...