Open
Description
dart:js_interop
's dartify
doesn't convert Promise
s to Future
s on dart2wasm like dart2js/DDC. Instead it treats it like a JSValue
:
import 'dart:js_interop';
import 'package:async_helper/async_helper.dart';
@JS('Promise.resolve')
external JSAny resolve(String s);
void main() {
asyncTest(() async {
await (resolve('').dartify() as Future<JSAny?>);
});
}
results in:
Type 'JSValue' is not a subtype of type 'Future<JSValue?>' in type cast
but passes on dart2js/DDC.
The culprit is
sdk/sdk/lib/_internal/wasm/lib/js_helper.dart
Line 422 in 9329f7b
Promise
s. DDC/dart2js does:
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
No status