我的Dart app项目结构:
myapp/
pubspec.yaml
pubspec.lock
asset/
...assets
build/
packages/
web/
lookups/
AjaxLookups.dart
requests/
RESTClient.dart
AjaxRESTClient.dart
AjaxLookups 文件:
library myapp;
abstract class AjaxLookups {
static final String BASE_URL = "/myapp";
static final String DO_S0METHING_SERVICE_URL = BASE_URL + "/doSomething";
}
RESTClient 文件:
library myapp;
typedef void Callback(String json);
abstract class RESTClient {
void get(String url, Callback onFail, Callback onSuccess);
void post(String url, String dataJSON, Callback onFail, Callback onSuccess);
}
AjaxRESTClient 文件:
library myapp;
import "RESTClient.dart";
import "../lookups/AjaxLookups.dart";
import "dart:html";
import "dart:convert" show JSON;
class AjaxRESTClient implements RESTClient, AjaxLookups {
// ...
}
上面,AjaxLookups
的import语句导致编译错误:
URI的目标不存在:'../ request / AjaxLookups.dart'
为什么我会这样?为什么Dart找不到../request/AjaxLookups.dart
?我需要做些什么来解决它?
答案 0 :(得分:1)
看起来AjaxLookups.dart文件位于lookups文件夹中,因此您的导入应该是:
import "../lookups/AjaxLookups.dart";
答案 1 :(得分:0)
我明白了。我在每个源文件中声明了一个新的myapp
库。相反,我添加了一个主/驱动程序Dart文件,在其中声明了一个名为myapp
的库,然后将所有其他源文件更改为part of myapp;
。