Skip to content

Commit bc8c945

Browse files
committed
objeto vue, v-model e methodos
1 parent dd40505 commit bc8c945

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

script.js

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
//Criação do objeto Vue
2+
3+
const aplicacao = new Vue ({
4+
el: '#main', //define qual elemento do HTML vai representar o objeto Vue
5+
data: { //o atributo data define as propriedades da aplicação
6+
txtParaCripto: '',
7+
txtParaDescripto: '',
8+
msgErro: '',
9+
resultadoTitulo: '',
10+
resultadoTexto: '',
11+
},
12+
methods: {
13+
criptografar: function(event) {
14+
event.preventDefault();
15+
16+
//se for > 0 definimos o titulo do box de mensagem o texto criptografado e apagamos a msg de erro
17+
if ( this.txtParaCripto.length > 0 ) {
18+
this.resultadoTitulo = "Texto criptografado";
19+
this.resultadoTexto = btoa(this.txtParaCripto) //função btoa do js para criptografar umt txt base64
20+
this.msgErro = "";
21+
} else { //se for < 0 apagamos o titulo do box de mensagem o texto cripto/descriptografado e definimos a msg de erro
22+
this.resultadoTitulo = "";
23+
this.resultadoTexto = "";
24+
this.msgErro = "Digite um texto para criptografar";
25+
}
26+
},
27+
28+
verificaBase64: function(texto) {
29+
// definição do padrão para analisar se o texto é base64
30+
const regex = /^([A-Za-z0-9+/])*([A-Za-z0-9+/]|[A-Za-z0-9+/]=|[A-Za-z0-9+/]==)$/;
31+
return regex.test(texto) // uso da função .test do js para testar se o texto segue o padrão base64
32+
},
33+
34+
descriptografar: function(event) {
35+
event.preventDefault();
36+
37+
//chama o metodo verificaBase64 para ver se o txt digitado é um tt criptografado (base64)
38+
//e armazenamos na variável verificaBase64
39+
40+
const verificaBase64 = this.verificaBase64(this.txtParaDescripto);
41+
42+
//verifica se o txt digitado é base64 e se tem mais de 0 caracteres
43+
if (verificaBase64 && this.txtParaDescripto.length > 0) {
44+
this.resultadoTitulo = "Texto descriptografado"
45+
this.resultadoTexto = atob(this.txtParaDescripto);
46+
this.msgErro = ""
47+
} else {
48+
this.resultadoTitulo = "";
49+
this.resultadoTexto = "";
50+
this.msgErro = "Este não é um formato válido";
51+
}
52+
}
53+
}
54+
55+
})

0 commit comments

Comments
 (0)