全局String变量无法重置为null的技术问题求助
问题解决:全局变量无法重置为null的原因及修复
核心问题是你误用了相等比较运算符==,而非赋值运算符=。==仅用于判断变量值是否等于目标值,不会对变量本身做修改;只有=才能将右侧值赋给左侧变量,这才是你需要的操作。
修正后的代码示例
方式一(使用setState)
若需要触发UI更新,保留setState并修正赋值逻辑:
setState(() { globals.globalDeviceVersion = null; // 替换==为= }); print(globals.globalDeviceVersion);
方式二(不使用state)
若无需刷新UI,直接用赋值运算符修改即可:
globals.globalDeviceVersion = null; // 替换==为= print(globals.globalDeviceVersion);
修改后全局变量会被正确设置为null,print输出也会同步更新为null。
内容的提问来源于stack exchange,提问作者Robban13
相关产品推荐
相关产品推荐

