亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

鉤子第一次沒有設置狀態

鉤子第一次沒有設置狀態

弒天下 2022-07-08 18:21:21
我是 React Native 的初學者,在我的項目中,我在按下按鈕用戶名和身份驗證狀態后沒有初始化我的變量,但在第二次按下后我的狀態初始化并顯示數據可以幫助我解決這個問題。謝謝const DataFeatch = async () => {await Authentication_Creator();let SearchData = {  "user_name": await UserName,  "user_authentication": await User_Authentication,};    try {  let response = await fetch('fechURL, {    method: 'POST',    headers: {      'Content-Type': 'application/json',    },    body: JSON.stringify(SearchData),  });  let json = await response.json();  if (json == 'no result') {    something  } else {    SetDataSource(json);  }}catch{ ERRoR}}我的 Authentication_Creator 是  const Authentication_Creator = async () => {var RNFS = require('react-native-fs');var path = RNFS.DocumentDirectoryPath + 'path';var data = await RNFS.readFile(path, 'utf8');var mydata = await JSON.parse(data);let hash = data;hash = md5(hash);SetUserName(() => mydata.UserName);SetUser_Authentication(() => hash);}
查看完整描述

1 回答

?
寶慕林4294392

TA貢獻2021條經驗 獲得超8個贊

您必須對代碼進行一些更改,不能使用 await 用戶名,它對反應狀態沒有影響。


您可以像這樣更改 Authentication_Creator:


 const Authentication_Creator = async () => {


    var RNFS = require('react-native-fs');

    var path = RNFS.DocumentDirectoryPath + 'path';

    var data = await RNFS.readFile(path, 'utf8');

    var mydata = await JSON.parse(data);

    let hash = data;

    hash = md5(hash);


    return { user_name: myData.UserName, user_authentication: hash};


}

之后在您的數據獲取功能中:


const DataFeatch = async () => {


let SearchData = await Authentication_Creator();


// and other code


}


查看完整回答
反對 回復 2022-07-08
  • 1 回答
  • 0 關注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號