Vue使用Prism實現(xiàn)頁面代碼高亮展示示例
引言
之前用 Ace 高亮代碼,但依賴包過大,本身需要的功能也不是很多,只有代碼高亮、顯示行號、高亮某行。就用一下 Prismjs,現(xiàn)記錄一下使用方法
1、 安裝依賴
yarn add prismjs // 安裝 prismjs 組件 yarn add babel-plugin-prismjs --dev // 安裝編譯器插件
2、配置插件
// .babelrc 或 babel.config.js 文件里配置以下內(nèi)容 { "plugins": [ ["prismjs", { "languages": ["javascript", "css", "php"], // 需要的語言 "plugins": ["line-numbers", "line-highlight"], // 引入的插件 // "theme": "twilight", // 自定義主題 "css": true }] ] }
3、代碼片段
注意看注釋,非常重要
// pre 和 code 寫在同一行(不然行號會錯亂 <template> <pre :data-line="props.lineNumber" :class="[`language-${props.language}`, 'highlight-code line-numbers']"><code :class="[`language-${props.language}`]">{{props.code}}</code></pre> </template> <script lang="ts" setup> import { defineProps, onMounted } from "vue; import Prism from 'prismjs'; import 'prismjs/themes/prism.css'; const props = defineProps ( { code: String, language: String, lineNumber: { type: Number, defalut: 0, }, }); onMounted(() => { setTimeout(() => // 必須加(獲取不到高亮行的高度和寬度 Prism.highlightAll(); // 異步請求的數(shù)據(jù),可在獲取數(shù)據(jù)后調(diào)用此方法 }); }); </script>
以上就是Vue使用Prism實現(xiàn)頁面代碼高亮展示示例的詳細內(nèi)容,更多關(guān)于Vue Prism頁面代碼高亮的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
關(guān)于vue中對window.openner的使用指南
opener屬性是一個可讀可寫的屬性,可返回對創(chuàng)建該窗口的Window對象的引用,下面這篇文章主要給大家介紹了關(guān)于vue中對window.openner使用的相關(guān)資料,需要的朋友可以參考下2022-11-11圖文詳解vue中proto文件的函數(shù)調(diào)用
這篇文章主要給大家介紹了vue中proto文件函數(shù)調(diào)用的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2021-08-08Vue 動態(tài)組件components和v-once指令的實現(xiàn)
這篇文章主要介紹了Vue 動態(tài)組件components和v-once指令的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08elementUI vue this.$confirm 和el-dialog 彈出框 移動 示例demo
這篇文章主要介紹了elementUI vue this.$confirm 和el-dialog 彈出框 移動 示例demo,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07Vue實現(xiàn)無限輪播效果時動態(tài)綁定style失效的解決方法
最近在開發(fā)中遇到了一個新需求:列表輪播滾動,實現(xiàn)方式也有很多,比如使用第三方插件,但是由于不想依賴第三方插件,想自己實現(xiàn),于是我開始了嘗試,但是在這個過程中遇到了動態(tài)綁定style樣式不生效,所以本文介紹了Vue實現(xiàn)無限輪播效果時動態(tài)綁定style失效的解決方法2024-08-08vue 中this.$set 動態(tài)綁定數(shù)據(jù)的案例講解
這篇文章主要介紹了vue 中this.$set 動態(tài)綁定數(shù)據(jù)的案例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01vue3項目配置按需自動引入自定義組件unplugin-vue-components方式
這篇文章主要介紹了vue3項目配置按需自動引入自定義組件unplugin-vue-components方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-03-03