我不确定这是否是Dart编辑器中的错误,或者我使用part of
的方式存在问题,但是给出了以下项目结构:
myapp/
pubspec.yaml
pubspec.lock
asset/
packages/
build/
web/
Fizz.dart
Buzz.dart
Fizz.dart
的位置:
library fizz;
void herp() {
print("Herp!");
}
以及Buzz.dart
的位置:
library buzz;
void derp() {
String x = "Derp!";
print(x);
}
如果我将Buzz.dart
更改为故意产生编译错误:
library buzz;
void derp() {
djedString x = "Derp!"; // Produces "Undefined class 'djedString'" error
print(x);
}
然后Dart编辑器用红线突出显示djedString
,并给出上述编译器错误:
未定义的类'djedString'
但如果我将Buzz.dart
更改为part of
fizz
库:
part of fizz;
void derp() {
djedString x = "Derp!"; // Perfectly fine! No errors!
print(x);
}
Dart编辑器,然后删除编译器错误,实际上,停止查找警告/错误(在文件内)。
这是一个错误还是我没有正确使用part of
?
答案 0 :(得分:4)
part of aaa;
必须与part "xxx";
一起使用。
<强> a.dart 强>
library a;
part 'a1.dart';
<强> a1.dart 强>
part of a;
// content of the part