Comment gérer les caractères spéciaux dans JSON
Shanthamma DS
J'ai une définition de colonne pour la grille, j'essaye de la mettre dans une charge JSON n. Il y a quelques caractères spéciaux et fonctions pour lesquels j'obtiens une erreur JSON non valide
[
{
"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\" />`}"
}
]
Comment échapper aux fonctions et aux caractères spéciaux dans ce cas
Djschwal
Le problème ici concerne les sauts de ligne dans vos attributs cellRendererFramework
et icons
, car JSON ne prend pas en charge les sauts de ligne littéraux. Si vous avez l'intention de conserver ces attributs sous forme de chaînes (plutôt que de transformer l' icons
attribut en un autre objet), vous pouvez essayer ce qui suit:
[
{
"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\" />`}"
}
]
Si vous souhaitez conserver les sauts de ligne dans votre chaîne, vous pouvez insérer \n
où vous voulez un saut de ligne.