From 598d50572a658f8e04775566fe3789954d9a01e3 Mon Sep 17 00:00:00 2001 From: nyne Date: Tue, 21 Jan 2025 15:34:54 +0800 Subject: [PATCH] Fix js int to dart --- lib/src/wrapper.dart | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/src/wrapper.dart b/lib/src/wrapper.dart index a5ba8bf..400714f 100644 --- a/lib/src/wrapper.dart +++ b/lib/src/wrapper.dart @@ -142,10 +142,12 @@ Pointer _dartToJs(Pointer ctx, dynamic val, dynamic _jsToDart(Pointer ctx, Pointer val, {Map? cache}) { - if (cache == null) cache = Map(); + cache ??= {}; final tag = jsValueGetTag(val); if (jsTagIsFloat64(tag) != 0) { - return jsToFloat64(ctx, val); + var res = jsToFloat64(ctx, val); + if (res.ceil() == res) return res.toInt(); + return res; } switch (tag) { case JSTag.BOOL: