#flutter #dart #assets
#flutter #dart #ресурсы
Вопрос:
Я получаю эту ошибку при добавлении ресурсов папки изображений в pubspec.yaml
Error detected in pubspec.yaml:
No file or variants found for asset: lib/assets/images.
Вот как выглядит мой pubspec.yaml
файл
flutter:
uses-material-design: true
assets:
- lib/assets/images
fonts:
- family: Potra
fonts:
- asset: lib/assets/fonts/Potra.ttf
- family: BAHNSCHRIFT
fonts:
- asset: lib/assets/fonts/BAHNSCHRIFT.TTF
Я попытался посмотреть это. Большинство пользователей предлагают указать правильный отступ для решения этой проблемы. Но я совершенно уверен, что здесь дело не в этом. Я попробовал правильный метод отступа, а также все возможные варианты, но тщетно.
Когда я удаляю нижеприведенную часть, код выполняется нормально без каких-либо ошибок, и соответствующее добавленное семейство шрифтов в pubspec также работает нормально.
assets:
- lib/assets/images
Почему я получаю сообщение об ошибке после добавления части assets?
Вот как выглядит моя файловая структура
Ответ №1:
Ваш код не работает, потому что вам нужно добавить еще одну косую черту, поэтому он должен быть похож:
assets:
- lib/assets/images/
Советы: Это своего рода плохая практика, если вы помещаете свою assets
папку в свою lib
папку. Попробуйте поместить его вне lib
папки. А также убедитесь, что отступы указаны правильно.
Я надеюсь, что это будет полезно.
Ответ №2:
У вас должна быть папка assets не внутри папки lib, а в главном корневом каталоге (т. е. вне библиотеки), а затем добавьте активы как :
assets:
# For images
- assets/images
fonts:
- family: FontFamilyName
fonts:
- asset: assets/fonts/the_font_you_want.ttf
И остерегайтесь отступов в pubspec.yaml, они также вызывают ошибки
Ответ №3:
Я получил это исключение из-за глупой ошибки, из-за которой в имени моего файла есть пробел, например home_cover. jpg
. Поэтому я удаляю его следующим образом home_cover.jpg