虽然我可以理解必须“复制”所有内容的麻烦,但这是您应该这样做的方式。
数据在Flutter中是不可变的。您无法对其进行突变,因此不得不克隆具有不同属性的它们。
因此,您的假设是正确的:如果要修改嵌套属性,则也必须克隆其所有父级。这导致:
final ThemeData theme = Theme.of(context);theme.copyWith( textTheme: theme.textTheme.copyWith( subhead: theme.textTheme.subhead.copyWith( fontSize: 30.0, ), ),);
再次:您无法避免。



