Флаттер загружает локальные ресурсы для HTML - PullRequest
0 голосов
/ 28 января 2019

Я загружаю локальный файл HTML в виджет, используя пакет flutter_webview следующим образом:

FutureBuilder<String>(
  future: LocalLoader().loadLocal(),
  builder: (context, snapshot) {
    if (snapshot.hasData) {
//      return Text("${snapshot.data}");
      return WebView(
        initialUrl: new Uri.dataFromString(snapshot.data, mimeType: 'text/html').toString(),
        javascriptMode: JavascriptMode.unrestricted,
      );

    } else if (snapshot.hasError) {
      return Text("${snapshot.error}");
    }
    return CircularProgressIndicator();
  }
)

Он загружает HTML просто отлично, но еслитеги указывают на другие ресурсы (например, файл CSS в том же месте или другие локальные изображения), они не будут отображаться в веб-просмотре.

Эти ресурсы (CSS и файлы изображений) добавляются впроект в указанном месте пути из HTML (относительный локальный путь), а также в pubspec .

Например, один из файлов HTML содержит этот элемент:

<link rel=stylesheet href=styles/main.css>

Когда файл HTML загружается в веб-просмотр, CSS не будет отражать его стиль для этой страницы.Если я вручную добавлю / напишу CSS в HTML (используя элемент <style> для его определения), он будет работать просто отлично.

Любое предложение о том, как я могу заставить эти HTML загружать свои локальные ресурсы?(даже если это означает изменение пакета или способ его реализации)

Также опубликовано здесь

...