首页 > 解决方案 > 颤振 sqflite 版本在 web 中解决失败

问题描述

因为 sqflite <=0.11.0+1 需要 SDK 版本 <2.0.0 或 >=2.0.0-dev <2.0.0 并且 sqflite >=0.11.0+2 <=0.11.0+3 依赖于来自 sdk 的任何颤振, sqflite <=0.11.0+3 需要来自 sdk 的任何颤振。并且因为 sqflite >=0.11.0+4 <=0.11.0+4 需要 Flutter SDK 而 sqflite >=1.1.2 需要 Flutter SDK,所以每个版本的 sqflite 都需要来自 sdk 的 flutter any。所以,由于来自sdk的flutter不存在(Flutter SDK不可用)并且bottom_navbar依赖于sqflite any,版本求解失败。

name: bottom_navbar
description: An app built using Flutter for web

environment:
  # You must be using Flutter >=1.5.0 or Dart >=2.3.0
  sdk: '>=2.3.0 <3.0.0'

dependencies:
  flutter_web: any
  flutter_web_ui: any
  http: ^0.12.0+2
  sqflite: ^1.1.2
  charts_common:
  #sqflite: ^1.1.2



dev_dependencies:
  build_runner: ^1.5.0
  build_web_compilers: ^2.1.0
  pedantic: ^1.7.0

dependency_overrides:
  flutter_web:
    git:
      url: https://github.com/flutter/flutter_web
      path: packages/flutter_web
  flutter_web_ui:
    git:
      url: https://github.com/flutter/flutter_web
      path: packages/flutter_web_ui

标签: flutterflutter-web

解决方案


目前,sqflite 不支持 web。他们的 GitHub 上有一个未解决的问题,用于添加支持https://github.com/tekartik/sqflite/issues/212

同时,还有其他用于 Flutter web 的 SQL 类型库。我用过的一个是https://pub.dev/packages/moor_flutter。这与 sqflite 非常相似


推荐阅读