vue中如何使用prismjs
安装
yarn add prismjs
基本使用
<template>
<code v-html="Prism.highlight(myJsonStr, Prism.languages.js);" />
</template>
<script setup>
import Prism from 'prismjs';
import 'prismjs/themes/prism.css';
// 后端返回的json字符串
const myJsonStr = "{name: '张三'}";
</script>
优化
1、将不标准的json字符串转换为标准的
2、(可能压缩过的)一行的json字符串 使其换行
<template>
<!-- 注意这里不要用code标签 否则会把你辛苦添加的换行符去掉 -->
<pre v-html="jsonStr" />
</template>
<script setup>
import Prism from 'prismjs';
import 'prismjs/themes/prism.css';
// 后端返回的json字符串(基本都是不标准的)
const myJsonStr = "{name: '张三'}";
// 给转换成标准的json字符串 并且支持换行
const handelJsonStr = (str) => {
const jsonStr = eval('(' + str + ')');
const jsonStrHuanhang = JSON.stringify(jsonStr, null, '\t');
const res = Prism.highlight(jsonStrHuanhang, Prism.languages.js);
return res;
};
let jsonStr = handelJsonStr(myJsonStr);
</script>
参考
https://www.jianshu.com/p/ea2ea7da8ae5
vue中如何使用prismjs的更多相关文章
- vue中如何不通过路由直接获取url中的参数
前言:为什么要不通过路由直接获取url中的参数? vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的. 相对来说,在某些情况下直接 ...
- vue中的重要特性
一.vue中的自定义组件 html的代码: <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- Vue中comoputed中的数据绑定
Vue中的数据实现响应式绑定是在初始化的时候利用definePrototype的定义set和get过滤器,在进行组件模板编译时实现water的监听搜集依赖项,当数据发生变化时在set中通过调用dep. ...
- vue中使用stompjs实现mqtt消息推送通知
最近在研究vue+webAPI进行前后端分离,在一些如前端定时循环请求后台接口判断状态等应用场景用使用mqtt进行主动的消息推送能够很大程度的减小服务端接口的压力,提高系统的效率,而且可以利用mqtt ...
- Vue中应用CORS实现AJAX跨域,及它在 form data 和 request payload 的小坑处理
基本概念部分(一):理解CORS 说道Vue的跨域AJAX,我想先梳理一遍CORS跨域,"跨域资源共享"(Cross-origin resource sharing),它是一个W3 ...
- vue中watched属性
watched属性,vue中的观察属性,可用来监听一个值的变化 默认有两个参数,新值,旧值 data (){ return { currentCity: "深圳" } } watc ...
- 七、vue中v-for有时候对页面不会重新渲染,数组变化后如何到渲染页面
v-for不能进行双向数据绑定,页面渲染完成后,再次更改v-for遍历的数据,js里面打印的数据看到数据值已经更改,但是页面的数据就是没有渲染,这是为什么呢? vue中v-for和angularj ...
- 【Vue】Vue中的父子组件通讯以及使用sync同步父子组件数据
前言: 之前写过一篇文章<在不同场景下Vue组件间的数据交流>,但现在来看,其中关于“父子组件通信”的介绍仍有诸多缺漏或者不当之处, 正好这几天学习了关于用sync修饰符做父子组件数据双向 ...
- vue中数据双向绑定的实现原理
vue中最常见的属v-model这个数据双向绑定了,很好奇它是如何实现的呢?尝试着用原生的JS去实现一下. 首先大致学习了解下Object.defineProperty()这个东东吧! * Objec ...
- Vue中之nextTick函数源码分析
Vue中之nextTick函数源码分析 1. 什么是Vue.nextTick()?官方文档解释如下:在下次DOM更新循环结束之后执行的延迟回调.在修改数据之后立即使用这个方法,获取更新后的DOM. 2 ...
随机推荐
- java中运行指令浅析
后续业务可能需要在程序中运行指令, 所以这里简单探究了一下, 分别从win和linux两个平台进行研究, 又以为java是跨平台语言, 可能二者之间的区别应该只是返回内容与输入指令的不同. (还不是在 ...
- Asp.net mvc基础(五)Redirect和View
1.重定向 (1)return RedirectToAction("Action名称"); //重定向到在同一个Controller下的Action方法下 (2)return Re ...
- 康谋分享 | 直面AD/ADAS快速开发挑战:IVEX自动驾驶场景管理及分析平台!
过去十年,自动驾驶和高级驾驶辅助系统 (AD/ADAS) 软件和硬件的开发成为了各大汽车公司的主要投资目标之一.各大汽车公司对 AD/ADAS 持续不断的投资加快了 AD/ADAS 组件的开发周期,但 ...
- ThinkPHP 集成 Redis 队列:从入门到实战技术分享
一.引言 在分布式系统架构中,异步处理.服务解耦和流量削峰是提升系统性能的核心需求.Redis 作为高性能内存数据库,凭借其丰富的数据结构(如 List.Stream.Sorted Set)和轻量级特 ...
- Dynamic adaptation to application sizes (DATAS) GC 策略
现在大家的 .NET 程序基本都部署在如 K8S 这种容器化场景下.出于节约资源的考虑,往往我们还会限制每个实例占用的资源.不知道大家发现没有,在一些高并发的场景下,我们的程序会占用非常多的内存,内存 ...
- 解决NET Core发布iis项目覆盖原有的项目时"另一个程序正在使用此文件,进程无法访问"
解决NET Core发布iis项目覆盖原有的项目时"另一个程序正在使用此文件,进程无法访问" 现在net core运用的多了,一系列的问题接踵而来,更新项目发布到iis时就有一个坑 ...
- 设计模式之“原型模式(ProtoType)”
一.原型模式(ProtoType) 作用:用原型实例指定创建对象的种类,并且通过拷贝这些原创新的对象 白话解释:用于创建重复的对象,同时有能保证性能(这种类型的设计模式属于创建型设计模式,他提供了一种 ...
- VNCTF-Misc
VNCTF-Misc VN_Lang 直接IDApro打开,shift+F12检索字符串 Echo Flowers echo_flowers.ovf文件,可以使用vmware挂载 有个imToken, ...
- win10无选字框
设置-->时间与语言-->语言-->中文-->选项 下滑到最底 微软拼音-->选项 常规-->(下滑到最底)打开使用以前版本的微软拼音输入法-->确定
- CF1992E Novice's Mistake
CF1992E Novice's Mistake 同步于个人博客. Problem Noobish_Monk 有 \(n\in [1,100]\) 个朋友.每个朋友都给了他 \(a\in [1,100 ...