Extension Methods 属于Dart高级用法。含义也非常容易理解,就是字面意思-拓展方法,用于给无法或不想直接修改的类或库拓展自己想要函数。
1 环境配置
Dart SDK的版本必须高于2.7.0
Flutter SDK版本最低要1.12.13
同时需要在pubspec.yaml同级创建analysis_options.yaml文件,里面配置:
analyzer:enable-experiment:- extension-methods
2 用法
extension <extension_name> on <type> {(<member_definition>)*}
示例用String扩展一个打印方法
extension StringEx on String{printMyself(){print("printMyself---" + this);}}
void _incrementCounter() {setState(() {_counter++;// 这个title的类型是StringExwidget.title.printMyself();});
