【问题标题】:Why this Flutter Web app opens a dart file every time I run the app?为什么这个 Flutter Web 应用每次运行时都会打开一个 dart 文件?
【发布时间】:2021-05-28 18:55:02
【问题描述】:

这一切都发生在我将 main.dart 中的 main() 更改为 sqflite 包的 async 函数时。

当我运行应用程序时,Chrome 会打开以进行调试,但会显示一个全白的空白屏幕,并且在 Visual Studio 代码中会打开一个名为 web_entrypoint.dart 的文件,其中会显示以下行:

这是 main.dart 中的 main():

//These are the imports you should consider
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:path/path.dart';
import 'package:sqflite/sqflite.dart';

void main() async {
  final GlobalKey<NavigatorState> navigatorKey =
        new GlobalKey<NavigatorState>();
// This part was added later      
  final database = openDatabase(
    join(await getDatabasesPath(), 'mDb.db'),
    onCreate: (db, version) {
      return db.execute(
        "CREATE TABLE  musteri(ad TEXT, telefon INTEGER, sigorta TEXT, dosya TEXT, eksper TEXT, hasar TEXT,  adres TEXT , ilkGelis DATETIME, km INTEGER, marka TEXT, model TEXT, motor TEXT, plaka TEXT, renk TEXT, sase TEXT, tc PRIMARY KEY INTEGER, sonGelis DATETIME, tahTeslim DATETIME )",
      );
    },
    version: 1,
  );

  runApp(MaterialApp(
    title: 'Title',
    
    initialRoute: '/',
    routes: {
     
      '/': (context) => SignIn(),
      
      '/home': (context) => Menu(),
      '/verify': (context) => EmailVerification(),
      '/yenikayit': (context) => Kayit("New Record"),
    },
    navigatorKey: navigatorKey,
  ));
}

pubspec.yaml 没有问题。我认为这与平台规范有关,但无法弄清楚原因。我也没有收到错误消息。在此之前,我的 main() 函数中只有 runAppNavigatorKey,它运行良好。

【问题讨论】:

    标签: flutter dart flutter-web sqflite


    【解决方案1】:

    sqflite 不支持网络。不仅包装中缺少标签,它甚至直接这样说:

    其他平台支持:

    • [...]
    • 不支持网络。

    因此,无论导致您的确切问题是什么,您都无法以这种方式使用数据库。很有可能,你看到的就是这个结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-27
      • 2017-10-30
      • 2023-03-18
      • 2021-07-05
      • 2023-02-03
      • 2016-12-20
      • 1970-01-01
      • 2016-07-27
      相关资源
      最近更新 更多