讓我先說我剛剛開始學習 React Native,為此,我會盡量明確。
語境:
我正在嘗試創建一個簡單的登錄/注冊頁面,我有一個主螢屏,其中包含 2 個帶有 React 狀態的輸入(用戶名和密碼),當我按下按鈕時我需要將其傳遞給服務,所以代碼看起來像這樣:function HomeScreen(props) {
const [userName, onChangeUserNameText] = React.useState(null);
const [password, onChangePasswordText] = React.useState(null);
...
return (
<TextInput
...
onChangeText={onChangeUserNameText}
value={userName}
/>
<TextInput
...
onChangeText={onChangePasswordText}
value={password}
/>
<Button
...
onPress={SignIn(userName, password)}
/>
)
SignIn(...) 方法是從我稱為 home.service 的另一個檔案中匯出的,該檔案應該處理我的主螢屏和 API 呼叫之間的通信,我還在該函式中放置了一些日志。
問題:
出于某種原因,每當我加載應用程式或更新我的任何輸入時,當我按下唱歌按鈕時應該執行的功能就會被執行
負載

關于更改文本

我在這里想念什么?
編輯/結論:
坦克你@Robin Zigmond,這個問題就像這位紳士所說的那樣,就像我在 onPress 事件中呼叫我的函式一樣:
<Button
...
onPress={() => SignIn(userName, password)}
/>
uj5u.com熱心網友回復:
您需要添加一個回呼,否則 SignIn 將繼續執行:
function HomeScreen(props) {
const [userName, onChangeUserNameText] = React.useState(null);
const [password, onChangePasswordText] = React.useState(null);
...
return (
<TextInput
...
onChangeText={onChangeUserNameText}
value={userName}
/>
<TextInput
...
onChangeText={onChangePasswordText}
value={password}
/>
<Button
...
onPress={() => SignIn(userName, password)}
/>
)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/462537.html
標籤:javascript 反应 反应式 世博会
下一篇:我需要確定一組使用X個模塊的用戶
