我在使用字符串转换JSON时遇到问题。在iOS上一切都很完美,但在Android上我有这个错误:
[ERROR] : TiExceptionHandler: (main) [2,20592] - Message: Uncaught TypeError: Converting circular structure to JSON
这是我的代码:
var args = $.args
var data = args.data;
var oferta = data.oferta;
var params = data.params;
var parent = args.parent;
//INSERT
var producto = Alloy.createModel('Producto', {
oferta_id: parseInt(oferta.id),
data: JSON.stringify(args) //ERROR
});
传递给控制器的args是这样的:
var args = {
data:
{
oferta: {id: 5},
params:{id_opcion_precio: 3445}
},
parent: {}
}
出了什么问题? iOS上为什么工作正常???
答案 0 :(得分:0)
不确定为什么要对args
进行字符串化。在创建模型时尝试使用JSON.stringify(args.data)
。
我想你会遇到同样的问题,只需在args
这样的日志语句中字符串化console.log(JSON.stringify(args))
吗?
我在尝试将整个事件(例如从ti.map)写入控制台时遇到了类似的问题。有些事情让它破裂 - 我认为你没有看到的数据中添加了一些属性。
答案 1 :(得分:0)
最后我解决了我的问题:
JSON.stringify({data: data, parent: parent});
这种作品我不知道为什么,但作品