top of page

CREAZIONE DI POST DI TESTO CON IMMAGINI

LEZIONE 8: CREAZIONE DI POST DI TESTO CON UNA IMMAGINE

In questa ottava lezione aggiungiamo la possibilità di aggiungere al Muro un post di testo con una immagine; continuiamo a sfruttare i Riquadri Multistate, a scrivere in un database campi provenienti da input utente e da un database differente, ed impariamo a caricare una immagine, aggiornare da codice un' immagine, e conosciamo il concetto di Funzione Asincrona.

SVILUPPI:

  • LIVELLO: medio

  • GRAFICA: si

  • CODICE: si

  • DATABASE: no

export async function button2_click(event) {
  
let toInsert = {
idAutore: $w('#dataset1').getCurrentItem()._id, //userprofile read dataset
fotoAutore: $w('#dataset1').getCurrentItem().immagineProfilo,
nomeAutore: $w('#dataset1').getCurrentItem().nomeUtente,  
contenutoPost: $w('#dataset2').getCurrentItem().contenutoPost,  
//userposts write dataset
titoloPost: $w('#dataset2').getCurrentItem().titoloPost,
immaginePost:
await uploadFile(), //calls asynchronous function
_createdDate: $w('#dataset2').getCurrentItem()._createdDate,  
likes : 0,
dislikes: 0,
commenti : 0,
letture : 0,

}

wixData.insert("UserPosts", toInsert)
.then( (results) => {
let item = results; 
console.log("OK")

$w("#dynamicDataset").refresh();
$w("#textBox2").value = " ";
$w("#input2").value= " ";
$w("#image7").src = "";
$w('#button3').hide();

}) ; 
 
}

export function button3_click(event) { //upload files and updates placeholder
if($w("#uploadButton1").value.length > 0) {
        $w("#uploadButton1").startUpload()
      .then( (uploadedFile) => {
            $w("#image7").src = uploadedFile.url;
          })
      .catch( (uploadError) => {
            console.log("File upload error: " + uploadError.errorCode);
        console.log(uploadError.errorDescription);
      });
  } 
  else {
      } 

}

export function uploadButton1_change(event) {
    if($w('#uploadButton1').value.length > 0) {
   $w('#button3').show();
  }
  else {
      $w('#button3').hide();
     }

}

function uploadFile(){
return $w('#uploadButton1').startUpload().then(r => r.url);
}

bottom of page