总结学到的有关Flutter空安全适配方法与技巧:
(1) 当我们要自定义Widget时,通常都会为Widget定义一些属性。若这个属性的可空的话,我们可以用?对这个属性进行修饰;若该属性不可为空,可以在构造函数中添加默认值或者用required进行修饰。
(2) 有关State的空安全适配:若它里面的成员变量可空时,我们同样可以用?进行修饰;若不可空,我们应该将它初始化或者用late修饰(表示一会儿我们再给它初始化)
(3) 有关Model的空安全适配:含有命名构造函数的情况下,对于会下发的字段我们用late修饰,反之用?进行修饰;含有命名工厂函数的模型,可空字段用?修饰,不可空字段用required修饰
(4)报错信息:type ‘Null’ is not a subtype of type ‘xxx’,原因就是我们将null值传给了一个不能为null的参数,一般在使用model时出现