Ext.decode()现在非常严格。当JSON中有注解或任何无效的JSON格式(例如没有双引号)时,它会抛出错误。如何禁用此类检查?
Ext.decode('{ test: test}'); OR Ext.decode(`{//test "include": [ "main.json" ] }`)
未捕获错误:您正在尝试解码无效的JSON字符串:但这不会抛出6.2.0中的错误
0qx6xfy61#
就像devbnz提到的,有第二个参数,如果设置为true,方法不会抛出错误,而是返回null。https://docs.sencha.com/extjs/6.5.3/classic/Ext.html#method-解码但在6.6.0之前,Ext.decode()仍然可以接受无效的json。它固定在6.6.0 https://docs.sencha.com/extjs/6.6.0/guides/whats_new/release_notes.htmlEXTJS-18443 JSON解码器应在无效语法上引发异常[更新]我的答案是错误的。目前没有解决方案。无法在ExtJs7中使用Ext.decode解码带注解的JSON
1条答案
按热度按时间0qx6xfy61#
就像devbnz提到的,有第二个参数,如果设置为true,方法不会抛出错误,而是返回null。https://docs.sencha.com/extjs/6.5.3/classic/Ext.html#method-解码
但在6.6.0之前,Ext.decode()仍然可以接受无效的json。它固定在6.6.0 https://docs.sencha.com/extjs/6.6.0/guides/whats_new/release_notes.html
EXTJS-18443 JSON解码器应在无效语法上引发异常
[更新]我的答案是错误的。目前没有解决方案。无法在ExtJs7中使用Ext.decode解码带注解的JSON