json - 如何处理 JSON 中的特殊字符
问题描述
我有一个网格的列定义,我正在尝试将其放入 JSON n 负载中。很少有特殊字符和函数会导致无效 JSON 错误
[
{
"headerName":"",
"field":"",
"headerCheckboxSelection":true,
"checkboxSelection":true,
"width":45
},
{
"headerName":"A-1 PORT",
"width":110,
"cellRendererFramework":"params => {
return this.renderCells(params)
}",
"field":"a1Port",
"tooltipField":"A-1 PORT",
"icons":"{
sortAscending: `<img src=${ascArrow} style=\"margin-left:65px;color:black; position:absolute\" />`,
sortDescending: `<img src=${dscArrow} style=\"margin-left:65px;color:black; position:absolute\" />`}"
}
]
在这种情况下如何转义函数和特殊字符
解决方案
cellRendererFramework
这里的问题在于您的和属性中的换行符icons
,因为 JSON 不支持文字换行符。如果您打算将这些属性保留为字符串(而不是将icons
属性转换为另一个对象),您可以尝试以下操作:
[
{
"headerName":"",
"field":"",
"headerCheckboxSelection":true,
"checkboxSelection":true,
"width":45
},
{
"headerName":"A-1 PORT",
"width":110,
"cellRendererFramework":"params => { return this.renderCells(params) }",
"field":"a1Port",
"tooltipField":"A-1 PORT",
"icons":"{ sortAscending: `<img src=${ascArrow} style=\"margin-left:65px;color:black; position:absolute\" />`, sortDescending: `<img src=${dscArrow} style=\"margin-left:65px;color:black; position:absolute\" />`}"
}
]
如果要保留字符串中的换行符,可以在\n
任何需要换行符的地方插入。
推荐阅读
- prometheus - Prometheus java 客户端和 Prometheus 服务器兼容性
- airflow - 气流任务设置为未在此池中排队的池
- excel - 从 Power Query 中的列中删除标点符号
- javascript - 寻找带有输入编号的 React Multiselect 组件
- react-native - 尝试从文件中解析模块`fs`
- swift - CoreData:此类对于关键文件夹位置不符合关键值编码
- mysql - Sql 查询从另一个表中选择与表的单行上的值相关的多个项目
- javascript - React 无法设置 React Hooks 的状态
- linux - Linux 第一行/最后一行文件集从最旧到最新排序
- php - 在 ZF 上创建的网站的简单 REST API 实现