当前位置:首页 > VUE

vue实现代码块

2026-02-24 06:23:28VUE

在Vue中实现代码块

使用<pre><code>标签

在Vue模板中可以直接使用HTML的<pre><code>标签来包裹代码内容。这种方式简单直接,适合静态代码展示。

<template>
  <pre><code>
    function helloWorld() {
      console.log('Hello, World!');
    }
  </code></pre>
</template>

使用第三方库highlight.js

highlight.js是一个流行的代码高亮库,支持多种编程语言。通过Vue的指令或组件可以方便地集成。

安装highlight.js

npm install highlight.js

在Vue组件中使用:

<template>
  <pre v-highlightjs><code class="javascript">
    function helloWorld() {
      console.log('Hello, World!');
    }
  </code></pre>
</template>

<script>
import hljs from 'highlight.js';
import 'highlight.js/styles/github.css';

export default {
  directives: {
    highlightjs(el) {
      hljs.highlightElement(el);
    }
  }
};
</script>

使用prismjs

prismjs是另一个强大的代码高亮库,支持更多自定义选项。

vue实现代码块

安装prismjs

npm install prismjs

在Vue组件中使用:

<template>
  <pre><code class="language-javascript">
    function helloWorld() {
      console.log('Hello, World!');
    }
  </code></pre>
</template>

<script>
import Prism from 'prismjs';
import 'prismjs/themes/prism.css';

export default {
  mounted() {
    Prism.highlightAll();
  }
};
</script>

动态代码块

如果需要动态渲染代码块,可以通过Vue的v-forv-if指令结合上述方法实现。

vue实现代码块

<template>
  <div>
    <pre v-for="(code, index) in codeBlocks" :key="index">
      <code class="language-javascript">{{ code }}</code>
    </pre>
  </div>
</template>

<script>
export default {
  data() {
    return {
      codeBlocks: [
        'function hello() { console.log("Hello"); }',
        'function world() { console.log("World"); }'
      ]
    };
  }
};
</script>

使用Vue插件vue-code-highlight

vue-code-highlight是一个专门为Vue设计的代码高亮插件,简化了集成过程。

安装插件:

npm install vue-code-highlight

在Vue中使用:

<template>
  <vue-code-highlight language="javascript">
    function helloWorld() {
      console.log('Hello, World!');
    }
  </vue-code-highlight>
</template>

<script>
import VueCodeHighlight from 'vue-code-highlight';

export default {
  components: {
    VueCodeHighlight
  }
};
</script>

以上方法可以根据具体需求选择,静态内容推荐使用<pre><code>标签,动态或复杂场景推荐使用highlight.jsprismjs

标签: 代码vue
分享给朋友:

相关文章

vue路由实现内部切换

vue路由实现内部切换

Vue 路由实现内部切换的方法 Vue Router 是 Vue.js 官方的路由管理器,用于实现单页应用(SPA)的页面切换。以下是几种常见的内部路由切换方式: 使用 <router-lin…

vue设计与实现下载

vue设计与实现下载

vue设计与实现电子书下载 《Vue.js设计与实现》是一本深入解析Vue.js框架原理的书籍,由霍春阳(HcySunYang)撰写。以下是获取该资源的常见途径: 正版购买渠道 京东、当当、天猫等…

实现 vue 框架

实现 vue 框架

Vue 框架的基本实现 Vue 是一个渐进式 JavaScript 框架,用于构建用户界面。以下是实现 Vue 框架的基本步骤和核心概念。 核心概念 响应式数据绑定 Vue 的核心特性之一是响应式数…

vue实现分步

vue实现分步

Vue 实现分步功能 在 Vue 中实现分步功能可以通过多种方式完成,以下是几种常见的方法: 使用动态组件 通过动态组件切换不同的步骤内容,结合 v-if 或 component 标签实现分步逻辑。…

实现vue message

实现vue message

实现 Vue 消息提示组件 创建 Message 组件 在 src/components 目录下创建 Message.vue 文件,内容如下: <template> <tran…

vue实现数据渲染

vue实现数据渲染

Vue 数据渲染的实现方式 Vue.js 提供了多种数据渲染的方式,包括插值表达式、指令和计算属性等。以下是常见的实现方法: 插值表达式 使用双大括号 {{ }} 将数据绑定到模板中,数据变化时会自…