<template>
<div id="app">
<textarea v-model="code"></textarea>
<div v-highlight v-html="highlightedCode"></div>
</div>
</template>
<script>
import hljs from 'highlight.js';
import 'highlight.js/styles/github.css';
export default {
data() {
return {
code: ''
};
},
computed: {
highlightedCode() {
return hljs.highlightAuto(this.code).value;
}
}
};
</script>
<style>
textarea {
width: 100%;
height: 200px;
}
</style>
模板部分 (<template>):
<textarea> 元素来让用户输入代码,通过 v-model 指令将用户输入的内容绑定到组件的 code 数据属性上。<div> 元素来显示高亮后的代码,通过 v-html 指令将计算属性 highlightedCode 的值插入到该元素中,并使用 v-highlight 自定义指令来应用高亮样式。脚本部分 (<script>):
highlight.js 库及其样式文件,用于代码高亮。data 函数,返回一个包含 code 属性的对象,用于存储用户输入的代码。computed 计算属性 highlightedCode,它会根据用户输入的代码自动进行语法高亮处理。样式部分 (<style>):
<textarea> 的宽度为 100%,高度为 200px,以确保有足够的空间供用户输入代码。上一篇:vue3 异步组件
下一篇:vue页面加载完成再执行的方法
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站