代码之家  ›  专栏  ›  技术社区  ›  Fernando Tiberti

如何创建JSON对象并将此JSON对象传递给外部JavaScript函数?

  •  2
  • Fernando Tiberti  · 技术社区  · 10 年前

    我正在用Dart开发一个游戏,我想将绘图移植到PIXI.js。基本上,我想到的一种方法是将游戏状态转换为JSON对象,并将此JSON对象传递给外部JS方法,然后该方法将创建PIXI容器。

    如何创建JSON对象以及如何将其传递给外部JavaScript函数?

    2 回复  |  直到 10 年前
        1
  •  3
  •   Günter Zöchbauer    10 年前
    import 'dart:convert';
    
    ...
    
    var json = JSON.encode(data);
    ...
    var data = JSON.decode(json);
    

    你可能想用 https://pub.dartlang.org/packages/js 用于dart js互操作。

        2
  •  3
  •   Community Mohan Dere    9 年前

    JSON.encode 和 JSON.decode 这就是您正在寻找的,但它们可以很好地处理基元类型(请小心,例如DateTime-不是基元)和基元类型集合。因此,如果您想对对象执行此操作,则应该将其转换为map/from map。当对象传递给 JSON.encode编码 ,如果此对象具有方法 Map toJson() ,应显式完成从映射的转换(例如,使用构造函数 Map

    此外,这可能很有用:我宁愿避免隐式 toJson 调用,因为在这种情况下,当它抛出异常时,您将看不到它的消息和调用堆栈。

    可以找到有用的链接和相关信息 in this question .