遇到Type 'Any' has no subscript members

今天在请求的时候,需要从UserDefaults取登录存下来的信息 结果遇到这个报错,记录一下

0.png

我在工具类里写了存取的方法
2.png

在登录成功以后,我将账号密码存起来
3png

4.png

然后在取的时候就报错Type 'Any' has no subscript members
看到Type'Any' 我就知道是取得时候,类型出问题了.我存的时候用的是[String: Any]

5.png

我取得时候
0.png

问题的原因是:

dict类型为[String: Any],
所以通过下标访问得到的结果是Any类型,
而mobileStr是String类型的变量,不能接收Any类型的值,
所以需要转换类型,
如果能保证这个Any类型的值肯定能转成String,那就用as!,
如果不能保证,用as?,并把mobileStr的类型改成String?

你可能感兴趣的:(遇到Type 'Any' has no subscript members)