How to Use Prism in a Vue Project(代码高亮显示插件)

Prism is a lightweight, robust, elegant syntax highlighting library.

👣 Steps

  1. Create a Vue project and install Prism and Vue Prism Component.
npm i -g @vue/cli
vue create vue-demo
cd vue-demo
npm i prismjs vue-prism-component
  1. Register Prism in src/main.js.
import "prismjs";
import "prismjs/themes/prism-funky.css";
import "prismjs/components/prism-scss.min";
import "prismjs/plugins/autolinker/prism-autolinker.min";
import "prismjs/plugins/autolinker/prism-autolinker.css";
import Prism from "vue-prism-component";
Vue.component("prism", Prism);
  1. Use Prism, e.g. in src/views/prism.vue.
<template>
  <div>
    <h1>Prism Demo</h1>

    <h2>HTML</h2>
    <prism>{{ html }}</prism>

    <h2>JavaScript</h2>
    <!-- prettier-ignore -->
    <prism language="js">const me = {
  name: "Yasmin ZY",
  country: "Indonesia"
}</prism>

    <h2>SCSS</h2>
    <!-- prettier-ignore -->
    <prism language="scss">.grid {
  display: grid;
  @media (min-width: 576px) {
    grid-template-columns: 1fr 1fr;
  }
}</prism>
  </div>
</template>

<script>
export default {
  data() {
    return {
      html: `<article>
  <h1 class="title">How to Use Prism in a Vue/Nuxt Project</h1>
  <p>Go to https://www.yasminzy.com/tutorial/prism.html</p>
</article>`
    };
  }
};
</script>

<style lang="scss" scoped>
pre:not(:last-of-type) {
  margin-bottom: 2rem;
}
</style>

📖 Explanation

Highlight code with prism component.

Specify the language in the language attribute. It is markup by default.

Available themes:
prism-coy
prism-dark
prism-funky
prism-okaidia
prism-solarizedlight
prism-tomorrow
prism-twilight
prism

Prims supports Markup, CSS, JavaScript, and C-like by default. Other component , e.g. SCSS need to be imported.

Plugin used:
autolinker to make the link in the code works.broken


原文: https://www.yasminzy.com/vue/prism.html#steps

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值