【发布时间】:2022-01-10 09:20:41
【问题描述】:
我有一个名为 GameData 的类,并使用 Get.put 将其放入内存中。我需要在一个变量中复制这个类,这样每当我更改变量中的数据时,内存中的实例都不会受到影响。
我需要这样做的原因是因为 GameData 是一个包含许多其他类使用的数据的类,并且我想创建它的副本,它不指向内存中的对象
【问题讨论】:
标签: flutter dart flutter-getx
我有一个名为 GameData 的类,并使用 Get.put 将其放入内存中。我需要在一个变量中复制这个类,这样每当我更改变量中的数据时,内存中的实例都不会受到影响。
我需要这样做的原因是因为 GameData 是一个包含许多其他类使用的数据的类,并且我想创建它的副本,它不指向内存中的对象
【问题讨论】:
标签: flutter dart flutter-getx
在GameData 类上使用.copyWith 方法:
class GameData{
...
SomeType gameBoard;
GameData copyWith(
....,
SomeType? gameBoard,
) {
return GameData(
...,
this.gameBoard: gameBoard?? this.gameBoard,
);
}
}
然后复制更新值为gameBoard的实例,例如:
final copiedInstance= Get.find<GameData>().copyWith(gameBoard: updatedGameBoardValue);
【讨论】: