如何从Flutter中的父组件更新子状态?

时间:2020-04-27 13:29:30

标签: flutter

我有一个Parent组件,在那里我不断获取要显示的数据集的更新。如果打开的话,我必须在“底表”中连续显示。我能够将更新的数据发送到StatefullWidget。下面的代码是在底页打开的情况下如何每秒接收实时数据的代码。

class PositionDetailsModal extends StatefulWidget {
 NetPosition netPosition;
 PositionsState instance;

 PositionDetailsModal({this.instance, this.netPosition}) : super();

 setLatestUpdates(NetPosition netPositionLocal) {
 netPosition = netPositionLocal; 
  if(ApiProvider().positionDetailsModalState != null) {
  log("positionDetailsModalState :" + positionDetailsModalState.toString());
  // Once the State is set inside its init i am storing the instance of it in global field 
  // and calling this method to update the state.
  ApiProvider().positionDetailsModalState.updateChangesToUI(netPositionLocal);
   }
 }
@override
PositionDetailsModalState createState() => PositionDetailsModalState();
}

但是,如果我调用updateChangesToUI并执行setState,则会收到此错误

在构建过程中调用

setState()或markNeedsBuild()

当flutter的父类中有可用的数据更新时,有什么方法可以更新Bottomsheet中的值吗?

0 个答案:

没有答案