欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue3引入highlight.js進行代碼高亮的方法實例

 更新時間:2022年04月08日 09:51:30   作者:友人喵咪老師  
最近忙著開發(fā)自己的開發(fā)腳手架,在做代碼生成器的時候,有個預(yù)覽功能,需要讓代碼高亮,下面這篇文章主要給大家介紹了關(guān)于vue3引入highlight.js進行代碼高亮的相關(guān)資料,需要的朋友可以參考下

背景描述:

在項目開發(fā)中,經(jīng)常一些日志預(yù)覽,還有文件的預(yù)覽,需要進行代碼高亮顯示。這樣可以讓文本內(nèi)容展示的時候顯得更加友好,也便于閱讀

效果類似markdown語法的代碼高亮,如下:

    <TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="自動化測試">
      <stringProp name="TestPlan.comments"></stringProp>
      <boolProp name="TestPlan.functional_mode">false</boolProp>
      <boolProp name="TestPlan.tearDown_on_shutdown">true</boolProp>
      <boolProp name="TestPlan.serialize_threadgroups">false</boolProp>
      <elementProp name="TestPlan.user_defined_variables" elementType="Arguments">
        <collectionProp name="Arguments.arguments"/>
      </elementProp>
    </TestPlan>

一、安裝依賴:

注意:我們需要安裝的依賴有兩個,網(wǎng)上的博文,都是寫的一個,比較坑。
npm install --save highlight.js
npm install --save @highlightjs/vue-plugin
命令行如下

## 這個是highlight.js基礎(chǔ)依賴
npm install --save highlight.js
## 安裝支持vue3 的@highlightjs/vue-plugin 依賴
npm install --save @highlightjs/vue-plugin

二、在vue3主入口main文件,對highlight進行引入和注冊:

需要引入的有

樣式 ,在main主入口引入樣式為全局統(tǒng)一都使用這個樣式,也可以在單獨的頁面引入,你想要的樣式。樣式效果參考官網(wǎng):https://highlightjs.org/static/demo/
更改 import ‘highlight.js/styles/atom-one-dark.css’ 把styles 后面的值改成你想要的樣式就行依賴包組件
# --- 文件src/main.ts | src/main.js 
# highlight 的樣式,依賴包,組件
import 'highlight.js/styles/atom-one-dark.css'
import 'highlight.js/lib/common'
import hljsVuePlugin from '@highlightjs/vue-plugin'

import { computed, createApp } from 'vue'
import App from './App.vue'

const app = createApp(App)

// 引入代碼高亮,并進行全局注冊
app.use(hljsVuePlugin)
app.mount('#app')

三、頁面使用:

    <!-- 把數(shù)據(jù)綁定到 `code` 屬性-->
    <highlightjs autodetect :code="code" />
    <!--或者直接將顯示的代碼寫到 `code`中 -->
    <highlightjs language='javascript' code="var x = 5;" />

示例如下:
可以使用 language 指定具體的語言,如javascript、xml等
這個值省略,highlightjs 也會自動識別對應(yīng)的語言

四、看下效果展示吧:

五、一些優(yōu)化:

1.問題

可以看到生成的代碼 是pre包裹的,會有個1rem 的margin-bottom,效果不是很好

2.解決方法

在對應(yīng)的頁面,使用style 標簽,對樣式進行重寫,注意不要加 scoped

<style lang="scss">
pre {
  margin-bottom: 0;
}
</style>

3. 處理后的效果

這個是示例,當然你們可以根據(jù)實際的項目進行樣式改造
碼字不容易,對你有幫助的話,給個點贊吧 ? (????)
更多詳情,請查閱官方文檔,
官網(wǎng)鏈接:https://highlightjs.org/
官網(wǎng)github鏈接:https://github.com/highlightjs/vue-plugin

總結(jié)

到此這篇關(guān)于vue3引入highlight.js進行代碼高亮例的文章就介紹到這了,更多相關(guān)vue3引入highlight.js代碼高亮內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解vuelidate 對于vueJs2.0的驗證解決方案

    詳解vuelidate 對于vueJs2.0的驗證解決方案

    本篇文章主要介紹了vuelidate 對于vueJs2.0的驗證解決方案,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • vue?的全選組件封裝你知道多少

    vue?的全選組件封裝你知道多少

    這篇文章主要為大家詳細介紹了vue的全選組件封裝,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • Vue基本使用之對象提供的屬性功能

    Vue基本使用之對象提供的屬性功能

    這篇文章主要介紹了Vue基本使用之對象提供的屬性功能實例詳解,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-04-04
  • Vue組件大全包括(UI組件,開發(fā)框架,服務(wù)端,輔助工具,應(yīng)用實例,Demo示例)

    Vue組件大全包括(UI組件,開發(fā)框架,服務(wù)端,輔助工具,應(yīng)用實例,Demo示例)

    本文為大家分享了網(wǎng)上比較流行的Vue組件,包括UI組件,開發(fā)框架,服務(wù)端,輔助工具,應(yīng)用實例,Demo示例等開源項目,總有一款適合你
    2018-10-10
  • vant4 封裝日期段選擇器的實現(xiàn)

    vant4 封裝日期段選擇器的實現(xiàn)

    本文主要介紹了vant4 封裝日期段選擇器的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Vue列表頁渲染優(yōu)化詳解

    Vue列表頁渲染優(yōu)化詳解

    這篇文章主要為大家詳細介紹了Vue列表頁渲染優(yōu)化的操作,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • vue路徑上如何設(shè)置指定的前綴

    vue路徑上如何設(shè)置指定的前綴

    這篇文章主要介紹了vue路徑上如何設(shè)置指定的前綴,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 詳解基于Vue的支持數(shù)據(jù)雙向綁定的select組件

    詳解基于Vue的支持數(shù)據(jù)雙向綁定的select組件

    這篇文章主要介紹了詳解基于Vue的支持數(shù)據(jù)雙向綁定的select組件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • vue打包后顯示空白正確處理方法

    vue打包后顯示空白正確處理方法

    很多朋友遇到這樣的問題當vue打包后顯示空白問題,遇到這樣的問題怎么處理呢?下面腳本之家小編給大家分享下vue打包后顯示空白正確處理方法,感興趣的朋友一起看看吧
    2017-11-11
  • 通過原生vue添加滾動加載更多功能

    通過原生vue添加滾動加載更多功能

    這篇文章主要介紹了通過原生vue添加滾動加載更多功能,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11

最新評論