2

次のコードは VM で正常に実行されますが、次のエラーで失敗します。

「'_ListConstructorSentinel' はタイプ 'int' のサブタイプではありません」

Dart2JS 経由で JavaScript に変換された場合。「pub run test -p chrome」を使用してコードを実行しています。

import "dart:mirrors";

main() {
  TypeMirror tm = new TypeToken<List<String>>().typeMirror;
  (tm as ClassMirror).newInstance(const Symbol(""), []);
}

class TypeToken<T> {
  TypeMirror get typeMirror => reflectType(T);
}

スタックトレース:

type '_ListConstructorSentinel' is not a subtype of type 'int'
  error.dart.browser_test.dart.js 4385:15    dart.wrapException
  error.dart.browser_test.dart.js 4604:13    dart.intTypeCheck
  error.dart.browser_test.dart.js 36709:11   Isolate.dart.List.static.List_List.H.computeSignature.func
  error.dart.browser_test.dart.js 13292:31   JsMethodMirror.dart.JsMethodMirror._invoke$2
  error.dart.browser_test.dart.js 12724:21   JsClassMirror.dart.JsClassMirror._getInvokedInstance$3
  error.dart.browser_test.dart.js 12054:30   JsTypeBoundClassMirror.<fn>
  error.dart.browser_test.dart.js 12058:19   JsTypeBoundClassMirror.dart.JsTypeBoundClassMirror.newInstance$3
  error.dart.browser_test.dart.js 85680:232  dart.main0
  error.dart.browser_test.dart.js 15329:32   dart.Future.static.Future_Future$sync.H.computeSignature.func
  error.dart.browser_test.dart.js 97668:16   IframeListener_start_closure.dart.IframeListener_start_closure.call$0

許されるべきではないことをしていますか、それともバグですか? バグである場合、回避する方法はありますか?

前もって感謝します!

4

1 に答える 1

0

これは既知の問題のようです: github.com/dart-lang/sdk/issues/21927

于 2015-06-12T15:06:57.270 に答える