函数外可访问的变量
Variable accessible outside the function
我有这个 React Native 代码,我想在这个之外使用 gameOfTheUser 变量(在箭头函数中创建:userRef. ounce (' value'). then (snapshot =>
)。怎么做?
export default class RouterScreen extends React.Component {
componentDidMount() {
const { navigate } = this.props.navigation;
fb.auth().onAuthStateChanged(user => {
if (user) {
// user exist
var userRef = fb.database().ref('users/' + user.uid);
userRef.once('value').then(snapshot => {
var gameOfTheUser = snapshot.child('game').val();
console.log('0 : ' + gameOfTheUser);
});
if (gameOfTheUser !== null) {
// gameOfTheUser --> error variable is not created
// user in game --> redirect to Game (@user, @game)
console.log('InGame');
var gameID = gameOfTheUser;
console.log('1 : ' + gameOfTheUser);
console.log('1 : ' + gameID);
navigate('Game', { user, gameID });
} else {
// user not in game --> redirect vers Choose (@user)
console.log('NotInGame');
navigate('Choose', { user });
}
} else {
// user doesn't exist
navigate('Auth');
}
});
}
你可以:
1)更新不在此范围内但在全局范围内的var(例如使用事件)
2)设置一个state/props(取决于它是否改变)并与主要组件分享它
我有这个 React Native 代码,我想在这个之外使用 gameOfTheUser 变量(在箭头函数中创建:userRef. ounce (' value'). then (snapshot =>
)。怎么做?
export default class RouterScreen extends React.Component {
componentDidMount() {
const { navigate } = this.props.navigation;
fb.auth().onAuthStateChanged(user => {
if (user) {
// user exist
var userRef = fb.database().ref('users/' + user.uid);
userRef.once('value').then(snapshot => {
var gameOfTheUser = snapshot.child('game').val();
console.log('0 : ' + gameOfTheUser);
});
if (gameOfTheUser !== null) {
// gameOfTheUser --> error variable is not created
// user in game --> redirect to Game (@user, @game)
console.log('InGame');
var gameID = gameOfTheUser;
console.log('1 : ' + gameOfTheUser);
console.log('1 : ' + gameID);
navigate('Game', { user, gameID });
} else {
// user not in game --> redirect vers Choose (@user)
console.log('NotInGame');
navigate('Choose', { user });
}
} else {
// user doesn't exist
navigate('Auth');
}
});
}
你可以: 1)更新不在此范围内但在全局范围内的var(例如使用事件) 2)设置一个state/props(取决于它是否改变)并与主要组件分享它