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();  
}