亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue3怎么解析markdown并實現代碼高亮顯示

發布時間:2022-07-19 17:01:26 來源:億速云 閱讀:701 作者:iii 欄目:開發技術

這篇文章主要介紹“Vue3怎么解析markdown并實現代碼高亮顯示”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Vue3怎么解析markdown并實現代碼高亮顯示”文章能幫助大家解決問題。

Vue實現博客前端,需要實現markdown的解析,如果有代碼則需要實現代碼的高亮。
Vue的markdown解析庫有很多,如markdown-it、vue-markdown-loader、marked、vue-markdown等。這些庫都大同小異。這里選用的是marked,代碼高亮的庫選用的是highlight.js。

具體實現步驟如下:

一、安裝依賴庫

在vue項目下打開命令窗口,并輸入以下命令

npm install marked -save    // marked 用于將markdown轉換成html
npm install highlight.js -save   //用于代碼高亮顯示

命令執行完后可以在控制臺或package.json文件中看到有安裝的版本號

Vue3怎么解析markdown并實現代碼高亮顯示

二、在main.js文件中引入highlight.js及樣式并創建一個自定義的全局指令

import hljs from 'highlight.js';
import 'highlight.js/styles/atom-one-dark.css' //樣式

//創建v-highlight全局指令
Vue.directive('highlight',function (el) {
  let blocks = el.querySelectorAll('pre code');
  blocks.forEach((block)=>{
    hljs.highlightBlock(block)
  })
})

這樣就可以在vue組件中使用v-highlight引用代碼高亮的方法了。

三、在Vue組件中應用marked解析及實現代碼高亮

代碼示例如下:

 <!-- 正文輸出 -->
<div class="entry-content">
  <div v-highlight v-html="article"  id="content"></div>
</div>
<script>
    // 將marked 引入
  import { marked }from 'marked';
    export default {
        name: 'articles',
        data(){
          return{
              article:''
          }
        },
        methods: {
          getPostDetail() {
            console.log('getPostDetail()'+this.id)
            fetchPostDetail(this.id).then(res => {
               this.postdetail=res.data
               // 調用marked()方法,將markdown轉換成html
               this.article= marked(this.postdetail.content);
               console.log(res.data)
              }).catch(err => {
                  console.log(err)
              })

          },
        created() {
          //調用獲取文章內容的接口方法
          this.getPostDetail()
        },
    }
 </script>

四、顯示效果

markdown解析及代碼高亮顯示效果

Vue3怎么解析markdown并實現代碼高亮顯示

示例中引用的樣式是 import 'highlight.js/styles/atom-one-dark.css'
實際highlight.js/styles中提供了很多樣式,可以根據自己的喜好選用。

Vue3怎么解析markdown并實現代碼高亮顯示

關于“Vue3怎么解析markdown并實現代碼高亮顯示”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

铜川市| 密云县| 元氏县| 富宁县| 泸水县| 长武县| 子洲县| 邵阳市| 来安县| 牙克石市| 南充市| 宾川县| 阿鲁科尔沁旗| 龙里县| 青浦区| 德兴市| 繁峙县| 秦皇岛市| 涪陵区| 天峻县| 新泰市| 静宁县| 明水县| 龙海市| 松潘县| 富顺县| 黎平县| 勐海县| 府谷县| 清涧县| 祁连县| 顺平县| 两当县| 开封市| 泰和县| 石家庄市| 高清| 旬阳县| 五原县| 六枝特区| 台中县|