Hola, estoy empezando a usar vue y javascript desde algún día y necesito hacer un ejemplo de formulario para mi "examen". Me gustaría guardar localmente los datos ingresados por los usuarios y usar estos datos e ingresarlos en otra página. ¿Tengo que usar una base de datos? (el usuario ingresa "nombre" y en la página siguiente "bienvenido (nombre)"). Esto es parte de mi código:
<label>Nome:</label> <input type="text" required v-model="nome"> <div class="submit"> <button>Iscriviti!</button> export default { data() { return { nome: '', } }, methods: { inviaForm() { console.log('form inviato') } }Lo siento por mi inglés, soy tan malo.
Página 1
<template> <div> <label>Nome:</label> <input type="text" required v-model="nome"> <div class="submit"> <button @click="inviaForm">Iscriviti!</button> </div> </template> <script> export default { data() { return { nome: '', } }, methods: { inviaForm() { localStorage.setItem('nome',this.nome) } } </script>Página 2
<template> <div> <div>Name is: {{nome}}</div> </template> <script> export default { data() { return { nome: '', } }, mounted() { this.nome = localStorage.getItem('nome'); } } </script>esto puede ayudar, solo el fragmento que almacenaría el nombre. Creo que no está en estados reactivos / vuex, así que intente esto (y en su otro componente use onMount() { this.nome = localStorage.getItem('name') } para recuperar. Lo resolverá.
<form @submit="inviaForm"> <label>Nome:</label> <input type="text" required v-model="nome"> <button>Iscriviti!</button> </form> export default { data() { return { nome: '', } }, methods: { inviaForm() { localStorage.setItem('name', this.nome) } }.