Usei esse código para trazer uma informação de uma página de membros para uma página de informações complementares, só que preciso que a informação também vá para a coleção/banco de dados :
Usei esse código ele insere automaticamente na página, mas o que falta nele é o envio para a coleção :
import wixData from 'wix-data';
import wixUsers from 'wix-users';
//pegar usuario logado
let user = wixUsers.currentUser;
$w.onReady(function () {
//Query para pegar dados do usuario logado
if (user) {
wixData.get("Members/PrivateMembersData", user.id, )
.then((usuario) => {
//Vincular informações com input
$w('#email2').value = usuario.loginEmail
}).catch(e => {
console.log(e)
})
}
});
let toInsert = { "loginEmail": "loginEmail", }; wixData.insert("dataset2", toInsert) .then( (eMail2) => { let item = 'eMail2'; //see item below } ) .catch( (err) => { let errorMsg = err; } );
Olá @O Guia do Bode Site e Revista
A melhor opção nesse caso e colocar a função de inserção dentro de outra função, assim você pode chamar quando estiver com o email do usuário:
import wixData from 'wix-data'; import wixUsers from 'wix-users'; //pegar usuario logado let user = wixUsers.currentUser; $w.onReady(function () { //Query para pegar dados do usuario logado if (user) { wixData.get("Members/PrivateMembersData", user.id, ) .then((usuario) => { //Vincular informações com input $w('#email2').value = usuario.loginEmail let toInsert = { "loginEmail": usuario.loginEmail, }; inserirDados(toInsert) }).catch(e => { console.log(e) }) } }); function inserirDados(toInsert) { wixData.insert("dataset2", toInsert) .then((eMail2) => { let item = 'eMail2'; //see item below }) .catch((err) => { let errorMsg = err; }); }
Implementei seu código de forma mais simples usando a api wixUsers:
import wixData from 'wix-data'; import wixUsers from 'wix-users'; //pegar usuario logado let user = wixUsers.currentUser; $w.onReady(function () { //Query para pegar dados do usuario logado if (user) { user.getEmail().then(email => { inserirDados({ loginEmail: email }) }) } }); function inserirDados(toInsert) { wixData.insert("dataset2", toInsert) .then((eMail2) => { let item = 'eMail2'; //see item below }) .catch((err) => { let errorMsg = err; }); }
Espero ter ajudado!