mohsen1 / json-formatter

Angular directive for collapsible JSON in HTML
http://azimi.me/json-formatter/demo/demo.html
Other
372 stars 85 forks source link

JSON object string formatted as simple string #70

Open gitmalong opened 5 years ago

gitmalong commented 5 years ago

My html:

<json-formatter json='attr.value' open='1'></json-formatter>

Is shown like this:

"{"globalId":"123","language":"en"}" (in green)

There is no way to expand it etc. Seems it is treated as simple string without object structure. If I enter my JSON code directly (as I get it when I put {{ attr.value }} in my template) it works fine and it is formatted correctly. I also made sure the JSON is valid.

I also tried

<json-formatter json='{{ attr.value }}' open='1'></json-formatter>

I'm clueless guys.

billptacek commented 3 years ago

I struggled with this as well, finally figured out the json-formatter expects an object, not a string. Wherever attr.value is defined, you need: attr.value = JSON.parse( json string value ); and then it will work.

attr.value = JSON.parse( "{globalId: 123, language: "en"}" ); <json-formatter json=attr.value open='1'></json-formatter>