vue使用marked和highlight.js實現代碼高亮效果

?marked是對markdown進行解析的插件,它可以把markdown語法解析成html語法,從而實現頁面效果,而highlight.js是對解析出的代碼實現高亮效果

效果:

安裝:避免踩我走的坑,安裝盡量按照這個版本安裝

npm install marked@0 --save

npm install highlight.js@9 --save

?

代碼:index.vue

<template><div class="detail"><div class="markdown-body"><div class="article_message hljs renderNav" v-html="code"></div></div></div>
</template><script>
import marked from "marked"; // 引入marked
import hljs from "highlight.js"; // 引入 highlight.js
import "highlight.js/styles/monokai-sublime.css"; // 引入高亮樣式 這里我用的是sublime樣式export default {name: "Detail",data() {return {code: "```javascript\nfunction(){\n\tconsole.log(123) //注釋\n}\njavascript\nfunction(){\n\tconsole.log(123) //注釋\n}\njavascript\nfunction(){\n\tconsole.log(123) //注釋\n}\njavascript\nfunction(){\n\tconsole.log(123) //注釋\n}\n```", // 要解析的markdown語法的內容};},mounted() {var rendererMD = new marked.Renderer();marked.setOptions({renderer: rendererMD,highlight: function (code, language) {const validLanguage = hljs.getLanguage(language)? language: "plaintext";return hljs.highlight(validLanguage, code).value;},pedantic: false,gfm: true,tables: true,breaks: false,sanitize: false,smartLists: true,smartypants: false,xhtml: false,});this.code = marked(this.code); // 將markdown內容解析},
};
</script>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/12788.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/12788.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/12788.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java實現ZIP壓縮并支持設置密碼:輕松上手指南

在日常開發中&#xff0c;我們常常需要對文件進行壓縮處理&#xff0c;尤其是當文件需要傳輸或存儲時&#xff0c;壓縮不僅能節省空間&#xff0c;還能提升效率。而為壓縮文件添加密碼則為數據安全提供了額外保障。本文將指導你如何在Java中實現ZIP文件的壓縮&#xff0c;并為其…

Linux進程——進程地址空間

前言&#xff1a;在講完環境變量后&#xff0c;相信大家對Linux有更進一步的認識&#xff0c;而Linux進程概念到這也快接近尾聲了&#xff0c;現在我們了解Linux進程中的地址空間&#xff01; 本篇主要內容&#xff1a; 了解程序地址空間 理解進程地址空間 探究頁表和虛擬地址空…

matlab使用教程(71)—控制坐標區布局

1.與位置相關的屬性和函數 有幾個屬性和函數可用于獲取和設置坐標區的大小與位置。下表摘要顯示了這些屬性和函數。 函數或屬性描述 OuterPosition 屬性 使用此屬性可以查詢或更改坐標區的外邊界&#xff0c;包括標題、標簽和邊距。要更改外邊界&#xff0c;請將此屬性指定為…

MySQL、JDBC復盤及規劃

數據庫仍有習題尚未做完&#xff0c;策略從一天做完改為每天5到10題&#xff0c;以此達到掌握和復習的效果&#xff0c;JDBC的六部仍需每天練習&#xff0c;從明天開始正式進行JavaWeb的學習&#xff0c;預計持續到七月中旬&#xff0c;還會完成一個書城項目&#xff0c;六月底…

基于Hadoop的課程診改大數據可視化分析研究與應用

基于Hadoop的課程診改大數據可視化分析研究與應用 “A Study and Application of Big Data Visualization Analysis for Course Diagnosis and Improvement based on Hadoop” 完整下載鏈接:基于Hadoop的課程診改大數據可視化分析研究與應用 文章目錄 基于Hadoop的課程診改大…

Vue 快速入門:Vue初級

語法規則 前端渲染 渲染有幾種方式&#xff1a;原生js、js模板、Vue模板語法 原生js 使用字符串拼接 js模板語法 Vue.js 模板語法概述 Vue.js 是一個用于構建用戶界面的漸進式框架&#xff0c;其模板語法非常靈活和直觀。Vue 的模板語法基于 HTML&#xff0c;可以通過指令…

Symbol類型的作用

在TypeScript&#xff08;和JavaScript&#xff09;中&#xff0c;Symbol 是一個內置對象&#xff0c;它提供了一個唯一的且不可改變的數據類型&#xff0c;用于作為對象的鍵&#xff08;key&#xff09;。這種類型主要用于避免命名沖突&#xff0c;特別是在使用像 for...in 或…

kali更換鏡像源

vim /etc/apt/sources.list.d/docker.list 或 vim /ect/apt/sources.list #清華大學源 deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free #中科大 de…

PID調節常見的問題----積分飽和等問題--參考學習

1&#xff0c; PID控制學習筆記之三—積分的處理 https://zhuanlan.zhihu.com/p/264238608 2&#xff0c;PID控制參數整定&#xff08;調節方法&#xff09;原理圖示MATLAB調試 https://blog.csdn.net/viafcccy/article/details/107988093 3&#xff0c;如何理解PID控制算法中…

Java為什么會成為現在主流的編程語言

Java為什么會成為現在的主流語言 前言一、Java語言概述Java是什么為什么大多數人會選擇從事Java為什么從事Java的工作者數量從年遞減 二、Java語言的特點簡單性面向對象分布式&#xff08;微服務&#xff09;健壯性安全性體系結構中立可移植性解釋型高性能多線程動態性 三、Jav…

UDP多對多組播通信

廣播和多播僅應用于UDP。TCP是一個面向連接的協議&#xff0c;TCP一定是點對點的&#xff0c;一點是兩個主機來建立連接的&#xff0c;TCP肯定是單播。只有UDP才會使用廣播和組播。 如下示例實現一個UDP多對多的組播通信&#xff0c;進程中有收、發兩個線程&#xff0c;分別表…

6款電腦精選工具軟件推薦!

AI視頻生成&#xff1a;小說文案智能分鏡智能識別角色和場景批量Ai繪圖自動配音添加音樂一鍵合成視頻https://aitools.jurilu.com/ 1.IP地址查看工具——純真ip數據庫 純真IP數據庫是一個易于操作的IP地址查詢工具&#xff0c;它允許用戶通過輸入IP地址來查詢其對應的地理位置…

Django創建網站的地基

相關文檔 1、為新網站創建一個文件夾&#xff08;這里是&#xff1a;locallibrary&#xff09; D:\django>mkdir locallibraryD:\django>cd locallibraryD:\django\locallibrary>dirVolume in drive D is 新加卷Volume Serial Number is B68C-03F7Directory of D:\dj…

【Uniapp】簡易封裝提示框showToast/showModal

組件 // 封裝提示框 export const showModal (content, showCancel false, title "提示") > {return new Promise((resolve, reject) > {uni.showModal({title: title,content: content,showCancel: showCancel,success: (res) > {resolve(res);},fail:…

Linux計劃任務功能介紹

一次性計劃任務(不能跨越0點) at 16:20 at> echo hello | wall at> at 1621 at> mkdir /tmp/date %F at> at 16:2212022015 at> rm -fr /tmp/* at> job 33 at 2015-12-02 16:22 atq 查詢計劃任務 atrm 刪除計劃任務 atrm 33 /etc/at.deny 拒絕使用at …

結合多模態 AI 谷歌展示 AR 眼鏡原型機;Meta 被曝開發帶攝像頭的 AI 耳機丨 RTE 開發者日報 Vol.204

開發者朋友們大家好&#xff1a; 這里是 「RTE 開發者日報」&#xff0c;每天和大家一起看新聞、聊八卦。我們的社區編輯團隊會整理分享 RTE&#xff08;Real Time Engagement&#xff09; 領域內「有話題的新聞」、「有態度的觀點」、「有意思的數據」、「有思考的文章」、「…

如何修改android 項目顯示的app名

修改vlaues下的string.xml文件 修改這個標簽中的內容就行

國產銀河麒麟V10SP1系統安裝Qt和MySql步驟

安裝軟件&#xff1a;準備好Kylin-Desktop-V10-SP1-Release-hwe-2107-x86_64.iso和qt-opensource-linux-x64-5.14.2.run 安裝步驟&#xff1a; 1、VMWare軟件中新建一個虛擬機并安裝Kylin-Desktop-V10-SP1-Release操作系統&#xff0c;安裝時候輸入密碼的地方記得要用英文&am…

“網絡安全新紀元:等保2.0的詳細解讀與實踐”

網絡安全等級保護基本要求》&#xff08;等保2.0&#xff09;于2019年6月發布&#xff0c;是我國網絡安全等級保護制度的一項重要標準。等保2.0主要針對關鍵信息基礎設施的網絡安全保護&#xff0c;對數據安全和個人信息保護提出了更高的要求。本文將對等保2.0進行詳細解讀&…

3.深度學習課程--技術棧

上一節我們概覽了深度學習的主要內容及其應用領域&#xff0c;解決了學習的初衷和用途問題。在深入算法和模型之前&#xff0c;本小節將介紹課程所需的技術棧和準備事項。雖然這些準備看似簡單&#xff0c;但它們對于后續學習至關重要。 首先&#xff0c;我們將使用Python作為…