如何将对象作为格式化的 JSON 对象复制到剪贴板?

How can I copy an object to a clipboard as a formatted JSON object?

对于我当前的项目,我有一个在上下文菜单上触发并在从 table 中选择单元格后触发的方法。基本上,这些选择的值正在用我创建的一种方法组织到一个对象中,我想以某种方式将它复制到剪贴板,所以当这个 JSON 对象被粘贴到其他地方时,它的格式很好(可以使用 Chrome Dev Tools 中“复制对象”选项中的那些对象来完成类似的操作)

对象格式示例:

{
  "indicatorName": null,
  "instanceGuid": null,
  "facts": {
    "decimals": "2",
    "specialUnit": "Monetary"
  },
  "value": {
    "column": 0,
    "row": 1
  },
  "xAxis": {
    "title": null,
    "value": "Денежные средства и их эквиваленты",
    "indexNumber": null
  },
  "yAxis": {
    "title": null,
    "value": "2020-12-31",
    "indexNumber": null
  },
}

目前我尝试使用 copy-to-clipboard 库并设法通过 copy(JSON.stringify(copiedObj)); 将一个对象作为字符串复制到剪贴板中,其中 copiedObj 是一个常规的 JS 对象,但是格式它只是一个没有任何间距或新行的字符串,在这种情况下我需要这样做。

我也尝试在没有 JSON.stringify() 的情况下传递它,但不仅仅是复制文本 [object Object]

在这种情况下我该怎么做才能达到所需的格式?是否有我需要从该库传递到 copy 函数的特定设置,或者您是否可以建议使用一些更好的工具来实现所需的结果?

正如 Shyam 在上面的评论中指出的那样,将参数 undefined2 添加到 JSON.stringify(copiedObj, undefined, 2) 中可以达到预期的结果