Flutter getData数组为空

Flutter getData数组为空,flutter,Flutter,我不明白为什么我的SharedReferences不保存我的数据chance是我拥有数据的列表。在chance中有一些数据之前,我进行了打印。但是当我在这个函数中返回时,当我执行getData时,我的值为null。我认为SharedReferences无法保存我的存储 void readFile() async { SharedPreferences.setMockInitialValues({}); sharedPreferences = await SharedPreferences

我不明白为什么我的SharedReferences不保存我的数据
chance
是我拥有数据的列表。在
chance
中有一些数据之前,我进行了打印。但是当我在这个函数中返回时,当我执行
getData
时,我的值为null。我认为
SharedReferences
无法保存我的存储

void readFile() async {
  SharedPreferences.setMockInitialValues({});
  sharedPreferences = await SharedPreferences.getInstance();

  List<String> getData=[];
  getData = await sharedPreferences.getStringList('defis');
  print(getData);
  //Here is alway null

  if (getData != null && getData != "") {
    print(getData);
  }else{
    print('A');
    await sharedPreferences.setStringList('defis', chance);
    print('B');
    getData = await sharedPreferences.getStringList('defis');
    print('C');
    print(getData);
    //After print I have any Data
  }

}
void readFile()异步{
setMockInitialValues({});
SharedReferences=等待SharedReferences.getInstance();
List getData=[];
getData=await SharedReferences.getStringList('defis');
打印(获取数据);
//这里总是空的
如果(getData!=null&&getData!=“”){
打印(获取数据);
}否则{
印刷品(‘A’);
等待共享参考。setStringList('defis',chance);
印刷品(‘B’);
getData=await SharedReferences.getStringList('defis');
印刷品(‘C’);
打印(获取数据);
//打印后,我有任何数据
}
}

setStringList中insert之前是否打印了chance,它可能为空?我发现了问题,我删除了SharedReferences.setMockInitialValues({});