大家好希望你做得很好,我想取消流媒体订阅,这是我想做的事情。
class classA extends ChangeNotifer{
StreamSubscription<Position> positionStream;
}
class classB extends State<Home>{
Provider.of<classA>(context,listen: false).positionStream.cancel();
}
但它不工作,我得到这个错误:取消方法被调用null
我认为你没有启动这个positionStream,这就是为什么你得到这个错误。
你可以检查null aware操作符来避免这个错误。
Provider.of<classA>(context,listen: false).positionStream?.cancel(); // Question mark added
现在,只有当它不是空的时候,它才会取消流。