我看到一些旧的问题/答案说在Flutter中创建类型别名是不可能的。由于语言似乎已经更新了很多次,我只想确认这是否仍然是情况。
我的具体问题是,我该如何创建像这样的类型别名:
typealias Json = Map<String, dynamic>;
是否有任何解决方法?因为我尝试使用空mixin来实现这个,但它说有18个方法没有实现。
我看到一些旧的问题/答案说在Flutter中创建类型别名是不可能的。由于语言似乎已经更新了很多次,我只想确认这是否仍然是情况。
我的具体问题是,我该如何创建像这样的类型别名:
typealias Json = Map<String, dynamic>;
是否有任何解决方法?因为我尝试使用空mixin来实现这个,但它说有18个方法没有实现。
关于Randai Schwartz的评论,这里有一个小更新。截至2021年4月,该功能似乎已经准备就绪,并且很可能会在下一个小版本或其后发布。
当您阅读此内容时,建议检查以下问题:
https://github.com/dart-lang/language/issues/65这应该可以实现以下功能:
typedef NewTypeName = OldTypeName;
更新:
Flutter现在官方支持typedefs。 :) 因此,您可以直接使用我上面的代码示例。
目前,typedef 仅支持函数类型(https://dart.dev/guides/language/language-tour#typedefs)。有谈论要添加更多,但不会很快实现(https://github.com/dart-lang/language/issues/115)。
flutter upgrade
或升级您的Dart版本,SimonEritsch的代码就能按照您的期望工作了。typedef
放在其中,并且它将显示在您包含该包的任何项目中。 - FMorschel