如何从我的Web应用程序中的lib文件夹导入库?

Dan*_*eny 4 dart dart-pub

我的文件夹结构如下所示:

lib\
    my_library.dart
web\
    index.html
    main.dart
pubspec.yaml
Run Code Online (Sandbox Code Playgroud)

main.dart,我正在进行my_library.dart(library my_library通过顶部)导入:

import '../lib/my_library.dart';
Run Code Online (Sandbox Code Playgroud)

这很好用.但是,拥有这条相对路径感觉有点脆弱.我读了可能使用的Pub Package Layout Conventionsimport 'package:blah' ; 它说:

当您在自己的包中使用库时,即使是src中的代码,您也可以(并且应该)仍然使用"package:"来导入它们

所以,我尝试将我的代码更改为:

import 'package:my_library.dart';
Run Code Online (Sandbox Code Playgroud)

但是,在Chrome Dev Editor中,我得到:

目标或URI不存在:'package:grid_data.dart'

在Dartium我得到:

GET http:// 127.0.0.1:51792/MyProject/web/packages/my_library.dart 404(未找到)

lib从我的项目中的其他dart文件导入我的文件夹中的内容的正确方法是什么?

Gün*_*uer 10

您缺少包名称

import 'package:my_project/my_library.dart';
Run Code Online (Sandbox Code Playgroud)

package:import语句中的部分引用包中的packages文件夹my_project(包含该文件夹的文件夹pubspec.yaml.unitate语句的其余部分是要导入的文件的路径.
您可以浏览此包文件夹中的文件夹和文件. DartEditor或文件管理器可以准确查看文件的组织方式.
此文件夹还包含一个my_project指向您my_project/lib文件夹的符号链接.