【发布时间】:2020-12-06 01:11:27
【问题描述】:
我一直收到以下错误Uncaught SyntaxError: await is only valid in async function。我试过在async 所在的地方移动,我到处找,找不到解决方案。提前致谢。
document.addEventListener('click', async () => async function(e){
if(e.target && e.target.id == 'update-order'){
updateCart();
}
}, false);
async function updateCart(){
firebase.auth().onAuthStateChanged(firebaseUser => {
let username = getUsername(firebaseUser);
var databaseRef = firebase.database().ref();
var foods = document.getElementsByClassName("food-name-id");
for(let i = 0; i < foods.length; i++){
let foodData = await queryDB('USERS/' + username + '/CART', 'NAME', foods[i].innerHTML);
let foodKey = await queryDBKey('USERS/' + username + '/CART', 'NAME', foods[i].innerHTML);
var postData = {
NAME: foodData.NAME,
QUANTITY: document.getElementById("quantity-" + foodKey).value,
CATEGORY: foodData.CATEGORY,
PRICE: foodData.PRICE,
};
var newItemRef = databaseRef.child(username + "/CART/"+ foodKey);
newItemRef.update(postData);
}
});
}
【问题讨论】:
标签: javascript firebase-realtime-database async-await firebase-authentication