Tengo un problema con mi código, así que cuando hago clic en mi casilla de verificación, el estado de mi casilla de verificación se ha puesto en falso, pero siempre tengo la marca/marca presente, mientras que normalmente no está aquí... Mi código:
<template> <div id="demo"> <form action="#/login" > <input type="email" placeholder="Insérez votre adresse-mail pour créer votre compte"/> <input type="password" placeholder="Mettez y votre mot de passe"> <label for="admin"> Droits administrateurs </label> <input type="checkbox" id="admin" v-model="checked" @change="noEntry"> </form> </div> </template> <script> module.exports = { name: "Signup", data () { return { checked: false, } }, methods : { noEntry() { let password; password = !this.checked ? "" : prompt("Seul le personnel de la librairie ya accès, veuillez inscrire le mot de passe", ""); password === "administrations" ? this.checked = true : this.checked = false console.log(this.checked) } } } </script> <style scoped> </style>Imagen del problema:
Gracias
No estoy seguro de lo que está tratando de hacer con su código, pero está funcionando bien según sus expectativas.
demostración :
new Vue({ el: '#app', data () { return { checked: false, password: null } }, methods : { noEntry() { let password; password = !this.checked ? "" : prompt("Seul le personnel de la librairie ya accès, veuillez inscrire le mot de passe", ""); this.checked = (password === 'administrations') ? true : false console.log(this.checked); } } }) <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <div id="app"> <input type="checkbox" id="admin" v-model="checked" @change="noEntry"> </div> Mi sugerencia : use la directiva v-model en el campo de contraseña para obtener el valor en lugar de usar el aviso.
demostración :
new Vue({ el: '#app', data () { return { checked: false, password: null } }, methods : { noEntry() { this.checked = (this.password === 'administrations') ? true : false console.log(this.checked); } } }) <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <div id="app"> <input type="password" v-model="password" placeholder="Mettez y votre mot de passe"> <input type="checkbox" id="admin" v-model="checked" @change="noEntry"> </div>