React Native 只调用一次函数
React Native call a function only once
我正在开发一个应用程序,在这个应用程序中使用 react native 我有一个名为 addDetails()
的函数,当用户按下按钮时,这个函数在 functionCombined()
中与另一个函数一起执行。在此应用程序中,functionCombined()
函数将根据每次按下按钮来执行。但是我只想执行一次addDetails()
函数,但是uploadPrices()
函数应该是根据按键按下来执行的。有什么办法可以实现吗?
基本上我想要的是只在 functionCombined()
函数内部执行一次 addDetails()
函数。 addDetails()
函数应仅在第一次单击按钮时执行,之后无论用户单击按钮多少次,addDetails()
函数都不会执行。有什么办法可以实现吗?
const functionCombined = () => {
addDetails();
uploadPrices();
}
const addDetails = () => {
db.transaction(txn => {
txn.executeSql(
`INSERT INTO invoices (name, date) VALUES (? , ?)`,
[customerName,text],
(sqlTxn, res) => {
console.log(`${customerName}, ${text} added successfully `);
},
error => {
console.log('error on adding details ' + error.message);
},
);
});
alert("Successfully Upload Customer Details");
};
<Pressable onPress={functionCombined}>
也许你可以有一个标志,检查按钮是否被点击,并在标志检查中添加 add Details(),类似于:
const [buttonClicked, setButtonClicked] = useState(false);
const functionCombined = () => {
if(!buttonClicked){
addDetails();
setButtonClicked(true);
}
uploadPrices();
}
我正在开发一个应用程序,在这个应用程序中使用 react native 我有一个名为 addDetails()
的函数,当用户按下按钮时,这个函数在 functionCombined()
中与另一个函数一起执行。在此应用程序中,functionCombined()
函数将根据每次按下按钮来执行。但是我只想执行一次addDetails()
函数,但是uploadPrices()
函数应该是根据按键按下来执行的。有什么办法可以实现吗?
基本上我想要的是只在 functionCombined()
函数内部执行一次 addDetails()
函数。 addDetails()
函数应仅在第一次单击按钮时执行,之后无论用户单击按钮多少次,addDetails()
函数都不会执行。有什么办法可以实现吗?
const functionCombined = () => {
addDetails();
uploadPrices();
}
const addDetails = () => {
db.transaction(txn => {
txn.executeSql(
`INSERT INTO invoices (name, date) VALUES (? , ?)`,
[customerName,text],
(sqlTxn, res) => {
console.log(`${customerName}, ${text} added successfully `);
},
error => {
console.log('error on adding details ' + error.message);
},
);
});
alert("Successfully Upload Customer Details");
};
<Pressable onPress={functionCombined}>
也许你可以有一个标志,检查按钮是否被点击,并在标志检查中添加 add Details(),类似于:
const [buttonClicked, setButtonClicked] = useState(false);
const functionCombined = () => {
if(!buttonClicked){
addDetails();
setButtonClicked(true);
}
uploadPrices();
}