export_legacy_symbol
符号 '{0}' 定义在传统库中,无法从已启用空安全的库中重新导出。
描述
#当已选择加入空安全的库导出另一个库,而该被导出的库尚未选择加入空安全时,分析器会产生此诊断。
示例
#假设一个尚未选择加入空安全的库
dart
// @dart = 2.8
String s;
以下代码会产生此诊断,因为它正在导出尚未选择加入空安全的库中的符号
dart
export 'optedOut.dart';
class C {}
常见修复方法
#如果可以,请迁移被导出的库,使其无需选择退出空安全
dart
String? s;
如果无法迁移该库,则移除该导出
dart
class C {}
如果被导出的库(即尚未选择加入空安全的库)本身导出了已选择加入空安全的库,那么你的库可以间接导出该已选择加入库中的符号。你可以通过在你的库的 export 指令中添加 hide 组合符来实现,该组合符会隐藏在未选择加入空安全的库中声明的所有名称。