2025-01-06, 13:07
  #1
Medlem
Finikantens avatar
Jag använder mig av Wix javascript och vill veta hur jag ska skriva min kod för att subtrahera ett visst nummer från det aktuella värdet, exempelvis 10 från 100? Det här funkar tyvärr inte (varför då?):

Kod:
$w('#engBuy').onClick((event) => {
     if (itemId.tokens <= 10) {
         console.log('To few tokens for purchase');
  } else {

    wixData.get('Members', itemId)
        .then((itemId) => {
        itemId.tokens - 10;

    return wixData.update('Members', itemId);
})
        dataset.save()
        .then((updatedItem) => {
            console.log('Item updated:', updatedItem);
         $w('#engSuccess').show();
    })
   .catch((error) => {
            console.error('Error updating item:', error);
  })
}
Citera
2025-01-06, 13:51
  #2
Medlem
Finikantens avatar
Jag kan här visa en annan funktion (inclusiveRole = true) som ska aktiveras med samma knapptryckning och den funkar i sig. Frågan är hur man bör kombinera de båda i kodskrivningen så att även den andra funktionen funkar?

Kod:
const dataset = $w('#dataset1');
          dataset.onReady(() => {
    const currentItem = dataset.getCurrentItem();
      if (currentItem) {
    const itemId = currentItem._id;

         $w('#engBuy').onClick((event) => {
    let isChecked = $w("#checkbox1").checked;
    if(isChecked === undefined) {
       console.log("is not checked");
  } else {

    wixData.get('Members', itemId)
        .then((item) => {
        item.inclusiveRole = true;

    return wixData.update('Members', item);
})
         $w('#dataset1').save()
        .then((updatedItem) => {
            console.log('Item updated:', updatedItem);
         $w('#engSuccess').show();
         $w('#engSuccess').text = '"All inclusive" is added to your account!';
    })
   .catch((error) => {
            console.error('Error updating item:', error);
     if ($w("#engSuccess").show())
         setTimeout(function() {
         $w("#engSuccess").hide();
    }, 6000);
   })
  }
})
Citera
2025-01-06, 15:27
  #3
Medlem
A-Good-Mans avatar
Citat:
Ursprungligen postat av Finikanten
Jag använder mig av Wix javascript och vill veta hur jag ska skriva min kod för att subtrahera ett visst nummer från det aktuella värdet, exempelvis 10 från 100? Det här funkar tyvärr inte (varför då?):

Kod:
$w('#engBuy').onClick((event) => {
     if (itemId.tokens <= 10) {
         console.log('To few tokens for purchase');
  } else {

    wixData.get('Members', itemId)
        .then((itemId) => {
        itemId.tokens - 10;

    return wixData.update('Members', itemId);
})
        dataset.save()
        .then((updatedItem) => {
            console.log('Item updated:', updatedItem);
         $w('#engSuccess').show();
    })
   .catch((error) => {
            console.error('Error updating item:', error);
  })
}
itemId.tokens -= 10;

Ovan kod är samma som om du hade skrivit:
itemId.tokens = itemId.tokens - 10;
Citera
2025-01-06, 16:51
  #4
Medlem
Finikantens avatar
Citat:
Ursprungligen postat av A-Good-Man
itemId.tokens -= 10;

Ovan kod är samma som om du hade skrivit:
itemId.tokens = itemId.tokens - 10;

Tack, jag ska prova direkt och se om det funkar. Ja det gjorde det!!!
__________________
Senast redigerad av Finikanten 2025-01-06 kl. 16:59.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in