我是 Flutter 的新手。当我导入 library:import 'package:intl/intl.dart';
时,它说the target of URI doesn't exist:package:intl/intl.dart;
5 回答
当您导入任何包时,例如:
import 'package:intl/intl.dart';
您还需要在字段示例pubspec.yaml
下的文件中添加包:dependencies
dependencies:
intl: ^0.15.7
然后,您可以从终端执行以下命令:
flutter packages get
或者
来自 Android Studio/IntelliJ:
单击Packages Get
顶部的操作功能区pubspec.yaml
更多信息在这里:
只是为了仔细检查,您确实 import intl: ^0.15.7 into pubspec.yaml; 三重检查它前面是否有四个空格(不多也不少);你跑包搞定了?
此外,将注意力放在 main.dart 的选项卡上,然后点击绿色箭头来运行它。有时您会在屏幕顶部看到一个弹出栏,告诉您 pubspec.yaml 已更改,您需要从该链接再次运行它以使其生效。(我在 IntelliJ 中看到过)
此外,如果它在项目窗口中的 publspec.yaml 下显示红线但一切正常,则这是分析中的错误。忽略它,但是是的,他们确实知道并正在努力。它经常在那里,因为出于某种原因,pubspec.yaml 说您的资产目录不存在,即使您可以毫无问题地访问资产。
让 IDE 为您执行此操作:
flutter pub add intl
运行上述命令后,它将使用可用的最新版本解决依赖关系。
或 手动流程
1)pubspec.yaml
在依赖项字段下的文件中添加包:
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^1.0.2
intl: ^0.17.0 // Add this line
2)在终端中执行以下命令:
flutter packages get
3)在你的 dart 文件中导入包:
import 'package:intl/intl.dart';
将此添加到您的软件包pubspec.yaml
文件中:
dependencies:
intl: ^0.16.1
该intl
包需要正确配置才能在 Flutter 上运行,并且您必须以正确的方式导入它,否则它会加载浏览器版本,
当您导入它时,不要使用import 'package:intl/intl_browser.dart';
, insead 使用以下(每个都有其用途,因此请参阅最适合您的文档):
import 'package:intl/date_symbol_data_local.dart';
import 'package:intl/intl.dart';
import 'package:intl/intl_standalone.dart';
还要检查您是否使用最新版本的intl
库并执行flutter clean
.
如果您因为旧版本的 SDK 而在安装时遇到错误。
只需在您的 pubs intl: ^0.17.0 ---> intl: ^0.16.1 或任何其他旧版本(如 intl: ^0.15.1 等)的某些点回退到 intl 版本。有时它是包的版本更新后与您的旧 sdk 不兼容