JSON 数据的列格式器

column formatter for JSON data

我正在尝试使用 Tabulator 并发现正确的格式化程序来显示 JSON 对象。 如果我将它作为 JSON 传递,单元格显示 [Object, Object] 并且如果我在将它作为长文本( textarea )之前对其进行字符串化 JSON 数据类型是否有任何内置格式化程序?有没有办法将数据显示为 JSON 对象。 谢谢

要基于 Nilesh 的建议,您需要创建一个格式化程序来实现 JSON.stringify 函数和内置 textarea 格式化程序的一部分:

function jsonFormatter(cell, formatterParams, onRendered){
    cell.getElement().style.whiteSpace = "pre-wrap"; //allow cell to take up multiple lines of text

    return JSON.stringify(cell.getValue(),null,4); //return JSON formatted cell
}

当您随后将格式化程序附加到列定义中的列时,您还需要将 variableHeight 选项设置为 true 以告诉 Tabulator 该单元格可以根据其高度更改高度内容,这是确保在 table/column 调整大小时正确绘制单元格所必需的

{title:"Example", field:"example", formatter:jsonFormatter, variableHeight:true}