Quiero escribir campos reactivos con nombre sin espacios, pero hubo un problema con v-model.trim , dicho código no filtra espacios, ¿cuál es el problema?
Mi página de Vue
<template> <div> <span>Name: {{title}}</span> <input type="text" v-model.trim="title"> </div> </template> <script> export default{ data(){ return{ title:'' } } } </script>Escribo "H ell o", y me sale, pero quiero "Hello"
Recorte solo los espacios de filtro al principio y al final. Si desea eliminar todos los espacios, puede usar const removeSpaces = (str)=>str.replace(/\s+/g,'')
Si desea evitar espacios en la entrada. Puedes prevenir usando @keydown.space.prevent .
Demostración de trabajo:
new Vue({ el: '#app', data() { return { title: '' } } }) <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <div id="app"> <span>Name: {{title}}</span> <input type="text" @keydown.space.prevent v-model="title"/> </div>