#flutter #dart #assets
#flutter #dart #ресурсы
Вопрос:
У меня есть пакет, в который я пытаюсь загрузить строку из своего корневого каталога. Этот файл должен использоваться в самом пакете только как часть внутренней конфигурации. Я не вижу, где я ошибаюсь.
Это моя структура папок:
my-package
--> lib
--> pubspec.yaml
--> assets/file.js
Это содержимое моего pubspec.yaml
flutter:
assets:
- assets/
- assets/file.js
Вот как я это называю
String js = await rootBundle.loadString('assets/file.js');
Я продолжаю получать не удается загрузить ресурс
Unable to load asset: assets/file.js
Ответ №1:
была такая же проблема, но решила ее, выполнив это:
В вашем пакете.файл yaml, добавьте эту строку для импорта файла / ресурса
assets:
- packages/<Package name>/assets/<File name>
Замените <Package name>
на имя вашего пакета и <File name>
на имя указанного файла / ресурса.
Затем поместите файл / ресурс в папку в каталоге lib вашего пакета. Структура должна выглядеть примерно так:
my_package
--> lib
--> assets
file.js
При необходимости обязательно добавьте в ссылку какие-либо дополнительные папки.
При ссылке на файл / ресурс в вашем приложении или пакете используйте ту же ссылку, что и у вас.файл yaml:
String js = await rootBundle.loadString('packages/<Package name>/assets/file.js');
Например, здесь я получаю файл .js.
Комментарии:
1. Спасибо! Это просто решило старую проблему. O мне не нужно дублировать ресурсы плагина. Я не могу поверить, что это заняло так много времени, чтобы получить ответ