gpt4 book ai didi

javascript - 为什么这个
 标签中没有换行符?

转载 作者:行者123 更新时间:2023-11-29 21:16:24 24 4
gpt4 key购买 nike

我正在使用 highlight.js显示我从 接收到的一些 JSON订阅。它正在为文本着色,但没有按预期添加换行符(通过 their demos )。此外,文档中的几个地方给人的印象是库生成了新行。请参阅 useBR 选项 here .

这是我当前的代码(我尝试了一些不同的东西):

pubnub.subscribe({
channel : 'TEST',
message : function(m){
console.log(m);
var hlt = hljs.highlight('json',m);
$('#jsonOutput').html("<pre>" + hlt.value + "</pre>");
}
});

这是 DOM 的样子:

enter image description here

但这是输出:

enter image description here

如何获取换行符?我希望它看起来像这样:

{
"id":"TESTWIDGET1",
"value":371,
"timestamp":"2016-08-31T11:39:57.8733485-05:00"
}

fiddle :https://jsfiddle.net/vgfnod58/

最佳答案

您的代码中没有任何换行符。当格式化 json 字符串时,突出显示功能将仅应用格式化选项。您的字符串只是一行。因此,您必须先以正确的格式导入它,然后才能突出显示它:

function print_r(object,html){
if(html) return '<pre>' + JSON.stringify(object, null, 4) + '</pre>';
else return JSON.stringify(object, null, 4);
}

var m = {"id":"TESTWIDGET1","value":351,"timestamp":"2016-08-31T12:03:24.3403952-05:00"};
var hlt = hljs.highlight('json',print_r(m));
$('#codehere').html(hlt.value);

请注意,我将 var m 从字符串更改为对象(只需删除模糊的 ')。

工作 fiddle :https://jsfiddle.net/WalterIT/vgfnod58/2/

关于javascript - 为什么这个 <pre> 标签中没有换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39255001/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com