javascript - 如何在按钮单击时复制 json 输出?

标签 javascript reactjs

我正在使用下面的插件来显示 json 。

https://www.npmjs.com/package/react-json-view .

我们可以有一个按钮来复制这个 json 吗?

https://codesandbox.io/s/async-pine-o6eho

return (
    <div className="App">
      <button
        onClick={() => {
          alert("---");
        }}
      >
        Copy
      </button>
      <ReactJson src={my_json_object} theme="monokai" />
    </div>
  );

我们可以在单击按钮时复制以下 json 输出吗?

最佳答案

您可以通过将 JSON 内容设置为临时输入并使用 document.execCommand('copy') 来复制 JSON。

function Copy(json) {
    const input = document.createElement("textarea");
    document.body.appendChild(input);
    input.value = JSON.stringify(json);
    input.select();
    document.execCommand("copy");
    document.body.removeChild(input);
}

Here是一个基于您的代码的工作示例。

关于javascript - 如何在按钮单击时复制 json 输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59005071/

相关文章:

JavaScript - 未捕获的类型错误 : Type error

javascript - 从 Sails.js Controller 访问 cookie

javascript - this.props.history 不重定向

javascript - React - 基于浏览器的差异加载(es5、es6、esnext 等)

javascript - <div> 双重扩展,html 和 <div> 构建问题

javascript - Three.js 雾,最大不透明度

javascript - JS-将Image对象转换为jpeg文件

javascript - 在 reactjs 中发出 HTTP 请求之前如何等待事件的互联网连接?

javascript - 如何使用 jest 模拟 react-router-dom 的 BrowserRouter

javascript - 'npm start' 上的 React JS 奇数错误无法解析源映射