[英]undefined is not a function (evaluating this.function() in react native
所以,我的意思是:我想將所有“解析”代碼保存在可以從其他類和文件調用的管理器中。 在此示例中,我有一個僅檢查用戶是否已登錄,然后基於此返回不同的抽屜式導航的功能。 問題是我不斷收到錯誤“未定義不是函數(正在評估...)”。 我對javascript很陌生,無法找到答案。 這是代碼。
提前致謝。
isUserLogged() {
Parse.User.currentAsync().then(function (user) {
if (user) {
console.log("ParseManager - User logged in.")
return true;
} else {
console.log("ParseManager - User logged off.")
return false;
}
});
render() {
if (ParseManager.isUserLogged()) {
return (
<SecondaryRoot />
);
} else {
return (
<MainRoot />
);
}
您只需在組件安裝時調用isUserLogged,然后再檢查狀態即可:ParseManager.js
isUserLogged(callback) {
Parse.User.currentAsync().then(function (user) {
if (user) {
console.log("ParseManager - User logged in.")
callback(true);
} else {
console.log("ParseManager - User logged off.")
callback(false);
}
});
App.js
componentDidMount(){
ParseManager.isUserLogged(
(logged)=>{
this.setState({logged});});
});
}
render() {
if (this.state.logged) {
return (
<SecondaryRoot />
);
} else {
return (
<MainRoot />
);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.