JSFiddle - React, Tailwind, and code Playground
by Nahuel Scotti
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/1.0.12/vue.min.js"></script>
<div id="app">
<h1>{{ dni }}</h1>
<input v-on:click="dni = generate()" type="button" value="GENERATE NEW DNI">
</div>
CSS
#app {
padding: 30px;
min-height: 65px;
}
* {
box-sizing: border-box;
font-family: "Roboto", "Helvetica";
font-weight: 300;
font-size: 28px;
margin: 0;
}
input[type="button"] {
font-size: 18px;
}
JavaScript
var vue = new Vue({
el: '#app',
data: {
dni: ''
},
methods: {
generate: function() {
for (s = '', i = 0; i < 8; i++) s += Math.floor(Math.random() * 9);
return s + 'TRWAGMYFPDXBNJZSQVHLCKET'.substr(parseInt(s) % 23, 1);
}
}
});
vue.dni = vue.generate();