MissingPluginException(在频道 com.tekartik.sqflite 上找不到方法 getDatabasesPath 的实现)

时间:2021-05-17 17:23:15

标签: flutter dart vscode-extensions sqflite

我在 vs 代码中使用了 flutter。连接到 sqflite 数据库时出现此错误。 我在 pubspec.yaml 文件中添加了 sqflite,path 插件。我努力了 flutter clean flutter run 命令也是如此,但没有任何效果。 这是我的数据库助手方法

  final databaseName = "notes.db";
  final tableName = "notes";
  DatabaseHelper._();
  static final DatabaseHelper db = DatabaseHelper._();
  static Database _database;

  final fieldMap = {
    "id": "INTEGER PRIMARY KEY AUTOINCREMENT",
    "title": "TEXT",
    "body": "TEXT",
    "creation_date": "DATE",
  };
  Future<Database> get database async {
    if (_database != null) return _database;

    _database = await initDB();
    return _database;
  }

  initDB() async {
    var path = await getDatabasesPath();
    var dbPath = join(path, 'notes.db');
    // ignore: argument_type_not_assignable
    Database dbConnection = await openDatabase(dbPath, version: 1,
        onCreate: (Database db, int version) async {
      print("executing create query from onCreate callback");
      await db.execute(_buildCreateQuery());
    });

    await dbConnection.execute(_buildCreateQuery());

    _buildCreateQuery();

    return dbConnection;
  }

值未存储在 sqflite 数据库中。它返回空值。那我该怎么办?

0 个答案:

没有答案