我无法使用AsyncStorage class GameViewController: UIViewController, ... {
var skView: SKView! // declare a property to keep a reference to the SKView
override func viewDidLoad() {
super.viewDidLoad()
if let view = self.view as! SKView? {
skView = view // assign the SKView to our new property
...
}
}
...
func rewardBasedVideoAdDidClose(_ rewardBasedVideoAd: GADRewardBasedVideoAd) {
videoAd = createVideoAd()
if let gameScene = skView.scene as? GameScene { // check to see if the current scene is the game scene
gameScene.revivePlayer() // revive the player
}
}
}
。以下是我的代码。因此,我从setItem
获取州名称,然后将其存储在TextInput
的{{1}} AsyncStorage
中。我收到错误:
onPress
我做错了什么?请帮忙。
答案 0 :(得分:4)
您需要从AsyncStorage
react-native
import { View, Text, StyleSheet, TextInput, TouchableOpacity , AsyncStorage} from 'react-native';
您还需要保持asyncSetName
功能
取消注释此行
this.asyncSetName = this.asyncSetName.bind(this)
同样由@Chris发现,您需要将您的班级名称更改为与AsyncStorage
不同
答案 1 :(得分:3)
AsyncStorage
导入react-native
,并按照他的建议保留绑定。AsyncStorage
以外的其他课程@AppName
放在密钥前面是很常见的,因此最终密钥最终会成为@AppName${this.state.name}
。但同样,这是可选的,仅仅是惯例。