Как импортировать библиотеку intl во Flutter?

Я новичок во Флаттере. Когда я импортирую библиотеку: import 'package:intl/intl.dart'; это говорит о том, что the target of URI doesn't exist:package:intl/intl.dart;

5 ответов

Решение

Просто для двойной проверки вы импортировали intl: ^0.15.7 в pubspec.yaml; тройная проверка, что перед ним четыре пробела (не больше и не меньше); а вы прогнали посылки?

Кроме того, поместите фокус на вкладку main.dart и нажмите зеленую стрелку, чтобы запустить его. Иногда вы увидите всплывающую панель в верхней части экрана, которая сообщит вам, что pubspec.yaml изменился, и вам нужно запустить его снова по этой ссылке, чтобы его можно было использовать. (Я видел это в IntelliJ)

Кроме того, если в окне проекта отображаются красные линии в файле publspec.yaml, но все работает, это ошибка в анализе. Проигнорируйте это, но да, они знают об этом и работают над этим. Это часто происходит, потому что, по какой-то причине, pubspec.yaml говорит, что ваш каталог ресурсов не существует, даже если вы можете получить доступ к ресурсам без проблем.

При импорте любого пакета, например:

import 'package:intl/intl.dart';

Вам также необходимо добавить пакет внутри pubspec.yaml файл под dependencies пример поля:

dependencies:
  intl: ^0.15.7

Затем из терминала вы можете выполнить следующую команду:

flutter packages get

или же

Из Android Studio/IntelliJ:

Нажмите Packages Get в ленте действия в верхней части pubspec.yaml

больше информации здесь:

https://flutter.io/using-packages/

Пусть 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) Импортируйте пакет в ваш файл дротика:

      import 'package:intl/intl.dart';

Добавьте это в свой пакет pubspec.yaml файл:

dependencies:
  intl: ^0.16.1

В intl пакет должен быть правильно настроен для работы с Flutter, и вы должны правильно импортировать его, иначе он загрузит версию браузера,

При импорте НЕ используйте import 'package:intl/intl_browser.dart';, внутри используйте следующее (каждый из них имеет свое применение, поэтому смотрите документацию, которая вам больше всего подходит):

import 'package:intl/date_symbol_data_local.dart';
import 'package:intl/intl.dart';
import 'package:intl/intl_standalone.dart';

Также проверьте, используете ли вы последнюю версию intl библиотеку и сделать flutter clean.

😎😎✔✔👍👍[решено] на самом деле ошибка возникает из-за вашей старой версии SDK. просто вернитесь к версии intl на несколько пунктов в ваших pubsintl: ^0.17.0 ---> intl: ^0.16.1 или любую другую более старую версию, такую ​​как intl: ^0.15.1 и т. д.

Другие вопросы по тегам