Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
颤振:Mongo Dart插件不工作_Dart_Flutter - Fatal编程技术网

颤振:Mongo Dart插件不工作

颤振:Mongo Dart插件不工作,dart,flutter,Dart,Flutter,我想使用mongo存储我的应用程序数据,但每当我尝试等待db.open()时,控制台上会出现以下错误: [ERROR:topaz/lib/tonic/logging/dart_error.cc(16)] Unhandled exception: E/flutter (11408): type 'Future<dynamic>' is not a subtype of type 'Future<bool>' where E/flutter (11408): Future

我想使用mongo存储我的应用程序数据,但每当我尝试
等待db.open()
时,控制台上会出现以下错误:

[ERROR:topaz/lib/tonic/logging/dart_error.cc(16)] Unhandled exception:
E/flutter (11408): type 'Future<dynamic>' is not a subtype of type 'Future<bool>' where
E/flutter (11408):   Future is from dart:async
E/flutter (11408):   Future is from dart:async
E/flutter (11408):   bool is from dart:core
E/flutter (11408):
E/flutter (11408): #0      _Connection.connect (file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection.dart:73:22)
E/flutter (11408): #1      _ConnectionManager._connect (file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection_manager.dart:23:22)
E/flutter (11408): <asynchronous suspension>
E/flutter (11408): #2      _ConnectionManager.open.<anonymous closure> (file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection_manager.dart:58:14)
E/flutter (11408): #3      Future.forEach.<anonymous closure> (dart:async/future.dart:484:26)
E/flutter (11408): #4      Future.doWhile.<anonymous closure> (dart:async/future.dart:526:26)
E/flutter (11408): #5      _RootZone.runUnaryGuarded (dart:async/zone.dart:1316:10)
E/flutter (11408): #6      _RootZone.bindUnaryCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1355:26)
E/flutter (11408): #7      Future.doWhile (dart:async/future.dart:541:18)
E/flutter (11408): #8      Future.forEach (dart:async/future.dart:482:12)
E/flutter (11408): #9      _ConnectionManager.open (file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection_manager.dart:56:19)
E/flutter (11408): #10     Db.open.<anonymous closure> (file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/database/db.dart:252:33)
E/flutter (11408): #11     new Future.sync (dart:async/future.dart:222:31)
E/flutter (11408): #12     Db.open (file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/database/db.dart:239:16)
E/flutter (11408): #13     main (file:///F:/Jamil/WORKSHOP/MY-PRACTICE/FLUTTER/FLUTTERMONGO/simplecrud/lib/main.dart:6:6)
E/flutter (11408): <asynchronous suspension>
E/flutter (11408): #14     _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:279:19)
E/flutter (11408): #15     _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:165:12)
E/flutter (11408): [ERROR:topaz/lib/tonic/logging/dart_error.cc(16)] Unhandled exception:
E/flutter (11408): type '(MongoReplyMessage) => void' is not a subtype of type '(dynamic) => void'
E/flutter (11408): #0      _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart:1114:29)
E/flutter (11408): #1      _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
E/flutter (11408): #2      _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
[错误:topaz/lib/tonic/logging/dart\u ERROR.cc(16)]未处理的异常:
E/颤振(11408):类型“Future”不是类型“Future”的子类型,其中
E/颤振(11408):未来来自dart:异步
E/颤振(11408):未来来自dart:异步
E/颤振(11408):布尔来自飞镖:核心
E/颤振(11408):
E/颤振(11408):#0#U连接。连接(file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection.dart:73:22)
E/颤振(11408):#1#连接管理器#连接(file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection_manager.dart:23:22)
E/颤振(11408):
E/颤振(11408):#2#U连接管理器打开。(file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection_manager.dart:58:14)
E/颤振(11408):#3 Future.forEach。(dart:async/future.dart:484:26)
E/flatter(11408):#4 Future.doWhile。(dart:async/future.dart:526:26)
E/flatter(11408):#5#RootZone.runUnaryGuarded(dart:async/zone.dart:1316:10)
E/颤振(11408):#6#RootZone.bindunarycallbackguared。(省道:异步/分区。省道:1355:26)
E/flatter(11408):#7 Future.doWhile(dart:async/Future.dart:541:18)
E/flatter(11408):#8 Future.forEach(dart:async/Future.dart:482:12)
E/颤振(11408):#9#U连接管理器打开(file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/network/connection_manager.dart:56:19)
E/颤振(11408):#10 Db.开启。(file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/database/db.dart:252:33)
E/flatter(11408):#11 new Future.sync(dart:async/Future.dart:222:31)
E/颤振(11408):#12 Db.开启(file:///C:/Users/Picmix/flutter/.pub-cache/hosted/pub.dartlang.org/mongo_dart-0.3.1/lib/src/database/db.dart:239:16)
E/颤振(11408):#13主(file:///F:/Jamil/WORKSHOP/MY-练习/颤振/颤振mongo/simplecrud/lib/main.省道:6:6)
E/颤振(11408):
E/颤振(11408):#14#星状。(dart:isolate/runtime/libisolate_补丁。dart:279:19)
E/flatter(11408):#15(RawReceivePortImpl.)handleMessage(dart:isolate/runtime/libisolate)补丁。dart:165:12)
E/flatter(11408):[错误:topaz/lib/tonic/logging/dart_ERROR.cc(16)]未处理的异常:
E/颤振(11408):类型“(MongoReplyMessage)=>void”不是类型“(dynamic)=>void”的子类型
E/颤振(11408):0。(dart:async/zone.dart:1114:29)
E/flatter(11408):#1 microtaskLoop(dart:async/schedule_microtask.dart:41:21)
E/flatter(11408):#2"开始微任务循环(dart:async/schedule"微任务。dart:50:5)
这是我为打开mlab和应用程序之间的连接而编写的简单代码:

import 'package:mongo_dart/mongo_dart.dart';

void main() async {
  print('hello');
  Db db = new Db('mongodb://<myusername><mypassword>@ds147659.mlab.com:47659/simple-crud');
  db.open().then((success) {
    if (success) print('connected');
  });
}
import'包:mongo_-dart/mongo_-dart.dart';
void main()异步{
打印(“你好”);
Db=newdb('mongodb://@ds147659.mlab.com:47659/simple crud');
db.open().then((成功){
如果(成功)打印(“已连接”);
});
}

有什么想法吗,先生?

这是由于最新的颤振更新beta2。 请检查这个

看起来您的项目和Mongo插件的版本不匹配

Mongo的最新插件于2017年10月24日更新

已经有了一个新的解决方案。你可以跟踪它

同时,根据: 您可以尝试从更改插件代码

Future<bool> get isOn => _channel.invokeMethod('isOn');
Future get-isOn=>\u channel.invokeMethod('isOn');

Future-get-isOn异步{
final bool isOn=wait_channel.invokeMethod('isOn');
返回isOn;
}
注意:以上只是一个示例,请检查插件dart文件以了解要更改的正确功能

Future<bool> get isOn async {
 final bool isOn = await _channel.invokeMethod('isOn');
 return isOn;
}