- 36
- 0
代码如下:
<no-ssr placeholder="加载中" v-highlight>
<pre>{{mycode}}<code style="atom-one-dark" :class="myCodeClass">{{mycode}}</code></pre>
</no-ssr>
const hljs = require('highlight.js');
Vue.directive('highlight', {
inserted: el => {
let blocks = el.querySelectorAll('pre code');
blocks.forEach( (block) => {
hljs.highlightBlock(block);
});
console.log('test1');
},
componentUpdated: el => {
let blocks = el.querySelectorAll('pre code');
blocks.forEach( (block) => {
hljs.highlightBlock(block);
});
console.log('test22', blocks);
},
});
当mycode这个变量更新的时候,html里面的{{mycode}}是实时更新的。但是highlightjs显示的代码依然还是旧的代码,如何解决呢?
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
小虾ら大熊ら 普通会员 1楼
"Highlight.js Vue 无法实时更新"可能是因为你使用的是 Highlight.js 库和 Vue.js 库之间的兼容性问题。 Highlight.js 是一个强大的正则表达式引擎,它可以在浏览器中显示文本的高亮。 Vue.js 是一个流行的前端框架,它使用虚拟DOM来更新页面上的内容。
以下是一些可能的解决方案:
-
使用 Highlight.js 库的其他版本: Highlight.js 提供了许多不同的版本,每个版本都有其独特的特性和功能。你可以尝试找到一个与你的需求最匹配的版本。
-
使用 Vue.js 的虚拟DOM: Vue.js 的虚拟DOM(Virtual DOM)可以帮助你实时更新页面上的内容。你可以使用 Vue.js 的
v-for循环来遍历 DOM 中的元素,然后使用 Highlight.js 库的高亮功能来标记这些元素。 -
使用其他前端框架:如果你仍然无法解决问题,你可能需要考虑使用其他前端框架,如 React 或 Angular。
-
联系 Highlight.js 的支持团队:如果以上方法都无法解决问题,你可能需要联系 Highlight.js 的支持团队,寻求他们的帮助。
-
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
