import { CopyOutlined } from '@ant-design/icons'; import { Input, Button, message, Divider } from 'antd'; import copy from 'copy-to-clipboard'; import { useState } from 'react'; const ColumnsTrans = () => { const [requestMsg, setrequestMsg] = useState(''); const [newRequest, setnewRequest] = useState(''); const [borderColor, setborderColor] = useState(null); const translateHandler = () => { try { let newString = JSON.parse(requestMsg); // let newString = eval('('+requestMsg+')'); const newRequestArr = formatPrettier(newString); setnewRequest(newRequestArr); setborderColor('green'); } catch (error) { message.error('“request”内容的格式不符合JSON字符串格式!'); setborderColor('red'); } }; const formatPrettier = (jsonObj) => { // debugger // { // title: '文本', // key: 'text', // dataIndex: 'id', // }, let arr = []; for (let key in jsonObj) { if (key.toLowerCase() == 'id') continue; const newObj = { title: jsonObj[key], key: key, dataIndex: key, }; arr = [...arr, newObj]; } const newRequestString = JSON.stringify(arr) .replace(/\[/g, '[\n\t') .replace(/\]/g, ']') .replace(/\,/g, ',\n\t') .replace(/\{/g, '{\n\t') .replace(/\}\,/g, '\n\t},') .replace(/\}\]/g, '\n\t}\n]'); return newRequestString; }; return (