Estou chamando Validator.validacoes(...) , um método estático, porém parece que nada ocorre. Nada mesmo. Nem se quer um erro ou uma exceção. O método simplesmente não funciona e paralisa todo o código.
class Validator {
constructor() {
throw new Error('Esta classe não pode ser instanciada');
}
static validacoes(nome,email,empresa) {
console.log("joinha test");
var resultado = true;
var erros = [];
if ((!validaNome(nome)) || nome.length == 0) {
erros.push("Nome inválido");
resultado = false;
}
exibeMensagensDeErro(erros);
if(!resultado){throw new Error('Tem coisa errada!');}
}
static validaNome(texto) {
if(!/[A-Z][a-z].* [A-Z][a-z].*/.test(texto)){
return false;
}
return true;
}
static exibeMensagensDeErro(erros) {
var ul = document.querySelector("#mensagens-erro");
ul.innerHTML = "";
erros.forEach(function(erro) {
var li = document.createElement("li");
li.textContent = erro;
ul.appendChild(li);
});
}
}
chamando: Validator.validacoes: (entre comentários "ajuda!!!")
var userList = document.getElementById("usersList");
var nameInput = document.getElementById("nomeInput");
var emailInput = document.getElementById("emailInput");
var empresaInput = document.getElementById("empresaInput");
var addButton = document.getElementById("addButton");
addButton.addEventListener("click",function(){
// Ajuda!!!!
Validator.validacoes(nameInput.value,emailInput.value,empresaInput.value);
// Ajuda!!!!
create(nameInput.value,emailInput.value,empresaInput.value);
});
function create(name,email,empresa){
var data={
name:name,
email:email,
empresa:empresa
};
return firebase.database().ref().child("users").push(data);
}
firebase.database().ref("users").on("value", function(snapshot){
userList.innerHTML = "";
snapshot.forEach(function (item){
var li = document.createElement("li");
li.appendChild(document.createTextNode(item.val().name + ": " + item.val().email + ": "+ item.val().empresa));
usersList.appendChild(li);
});
});