首页 > 解决方案 > Flutter Dart - 在 StreamSubscription 中接收非静态成员变量

问题描述

我需要保存以下 StreamSubscription 传递非静态成员变量 _uid 的结果。这是不允许的。有什么解决方法可以使这项工作?

StreamSubscription < LocationResult > subscription = Geolocation.locationUpdates(

    accuracy: LocationAccuracy.best,
    displacementFilter: 10.0, // in meters
    inBackground: true, // by default, location updates will pause when app is inactive (in background). Set to `true` to continue updates in background.
  )
  .listen((result) {
    if (result.isSuccessful) {

      saveResult(result, _uid);
    } else {

    }
  });

_uid 在 Widget 构建期间设置:

String _uid = UserModel.of(context).firebaseUser.uid;

我也无法在 saveResult() 中访问 _uid,因为它是一个静态方法。

标签: dartflutter

解决方案


推荐阅读