广告
返回顶部
首页 > 资讯 > 精选 >在react中使用highlight.js将页面上的代码高亮方法是什么
  • 580
分享到

在react中使用highlight.js将页面上的代码高亮方法是什么

2023-06-26 03:06:00 580人浏览 泡泡鱼
摘要

今天就跟大家聊聊有关在React中使用highlight.js将页面上的代码高亮方法是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。通过 highlight.js 库实现对文章正

今天就跟大家聊聊有关在React中使用highlight.js将页面上的代码高亮方法是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

通过 highlight.js 库实现对文章正文 html 中的代码元素自动添加语法高亮,highlight.js官方文档

下载highlight.js

npm i highlight.js

导入highlight.js

import hljs from 'highlight.js'import 'highlight.js/styles/vs2015.CSS' 用highlight.js  useEffect(() => {    // 配置 highlight.js    hljs.configure({      // 忽略未经转义的 HTML 字符      ignoreUnescapedHTML: true    })    // 获取到内容中所有的code标签    const codes = document.querySelectorAll('pre code')    codes.forEach((el) => {      // 让code进行高亮      hljs.highlightElement(el as HTMLElement)    })  }, [])

实例代码

import hljs from 'highlight.js'import 'highlight.js/styles/vs2015.css'import { useEffect } from 'react'export default function Question () {  useEffect(() => {    // 配置 highlight.js    hljs.configure({      // 忽略未经转义的 HTML 字符      ignoreUnescapedHTML: true    })    // 获取到内容中所有的code标签    const codes = document.querySelectorAll('.dg-html pre code')    codes.forEach((el) => {      // 让code进行高亮      hljs.highlightElement(el as HTMLElement)    })  }, [])  const content = `    <pre>      <code>console.log(abc)</code>      <code>console.log(abc)</code>    </pre>    <h4>nihoa</h4>    <pre>      <code>console.log(abc);xxx.forEach(item=>{console.log(1)})</code>    </pre>    `  return (    <div className="dg-html">      Question      <div dangerouslySetInnerHTML={{ __html: content }} />    </div>  )}

看完上述内容,你们对在react中使用highlight.js将页面上的代码高亮方法是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网精选频道,感谢大家的支持。

--结束END--

本文标题: 在react中使用highlight.js将页面上的代码高亮方法是什么

本文链接: https://www.lsjlt.com/news/306535.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作