【问题标题】:JSON.stringify failing due to breeze entityAspect nestingJSON.stringify 由于轻而易举的 entityAspect 嵌套而失败
【发布时间】:2015-05-06 21:40:19
【问题描述】:

我们正在尝试在我们的 AngularJS/Breeze 门户网站中使用 loggly,当我尝试通过 $log.error 通过网络发送错误时遇到了一些麻烦(角度日志记录和 loggly 日志记录都在这里发挥作用)。最终会调用 JSON.stringify,它会抛出:

将循环结构转换为 JSON

问题是 entityErrors 数组包含一个实体数组,其中每个实体都包含一个 entityAspect,该实体还包含相同的实体,该实体包含相同的 entityAspect……是的,你明白了我要去的地方。

EntityAspect 是由 Breeze 自动插入的,所以我不确定如何绕过这个循环引用。是否有任何我没有想到的陷阱可能导致这种递归嵌套,或者这正是 Breeze 中 entityAspect 功能的工作原理?

【问题讨论】:

标签: breeze loggly


【解决方案1】:

如果您可以管理记录错误的方式,就可以避免这些问题。

显然,由于您发现的原因,仅转储错误对象是行不通的。我选择了我想要记录的错误信息。我一般不会转储entityErrors;我从他们那里选择我真正需要的信息。

如果我觉得必须抛弃它们,我会考虑使用 EntityManager.exportEntitiesasString=falseincludeMetadata=false 选项。这将返回一个没有循环的 JSON 结构。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多