如何通过Vue获取并处理复杂表单数据?
- 内容介绍
- 文章标签
- 相关推荐
本文共计691个文字,预计阅读时间需要3分钟。
目录需求获取数据并提交模板过滤器过滤器的使用场景总结需求使用Vue收集用户数据:获取数据并提交代码实现:将value的值与变量属性进行绑定:v-model.trim=username; 去除
目录
- 需求
- 获取数据并提交
- 模板过滤器
- 过滤器的使用场景
- 总结
需求
使用Vue收集如下用户数据:
获取数据并提交
代码实现:
将value的值与变量属性进行绑定
v-model.trim = ‘username' ; 去除两端空格
v-model.number = ‘age';将字符串转为数值
v-model.lazy = ‘age' ; 不是立即收集,而是切换焦点后收集
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta www.baidu.com">《用户协议》</a> <!-- 点击按钮 提交 --> <button :style="{display:'block',backgroundColor:'lightblue',}">提交</button> <!-- submit 提交 --> <!-- <input type="submit" value="提交"> --> </form> </div> <script> Vue.config.productionTip = false new Vue({ el: "#container", data: { user: { username: "", password: "", age: "", sex: "", hobby: [], city: "", desc: "", agree: "", } }, methods: { submit(event){ console.log("提交表单") // 在form内,参数自动提交 console.log(JSON.stringify(this.user)) }, }, }) </script> </body> </html>
模板过滤器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>模板过滤器</title> <script src="/static/js/vue.js"></script> <script src="/static/js/dayjs.min.js"></script> </head> <body> <div id="container"> <!-- 过滤器 --> <span>{{ time | timeFormatter}}</span><br> <!-- 传参数的过滤器 第一个参数永远是管道数据--> <span>{{ time | timeFormatter("YY-MM-DD hh:mm:ss")}} </span> <!--也可以多个过滤器串联--> </div> <script> Vue.config.productionTip = false //全局过滤器,所有组件中都可以使用 Vue.filter("myFilter", function(value){ return '全局过滤' }) new Vue({ el: "#container", data: { time: 1639579694662, //时间戳,不是字符串 }, //局部过滤器,组件内部使用 filters: { timeFormatter(time, format){ // 第一个参数 if(format){ return dayjs(time).format(format) }else{ return dayjs(time).format("YYYY-MM-DD HH:mm:ss") } }, }, }) </script> </body> </html>
过滤器的使用场景
1.插值语法中使用
2.v-bind:属性 =‘ xx| xx '
处理一些简单的操作,产生了新数据
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注自由互联的更多内容!
本文共计691个文字,预计阅读时间需要3分钟。
目录需求获取数据并提交模板过滤器过滤器的使用场景总结需求使用Vue收集用户数据:获取数据并提交代码实现:将value的值与变量属性进行绑定:v-model.trim=username; 去除
目录
- 需求
- 获取数据并提交
- 模板过滤器
- 过滤器的使用场景
- 总结
需求
使用Vue收集如下用户数据:
获取数据并提交
代码实现:
将value的值与变量属性进行绑定
v-model.trim = ‘username' ; 去除两端空格
v-model.number = ‘age';将字符串转为数值
v-model.lazy = ‘age' ; 不是立即收集,而是切换焦点后收集
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta www.baidu.com">《用户协议》</a> <!-- 点击按钮 提交 --> <button :style="{display:'block',backgroundColor:'lightblue',}">提交</button> <!-- submit 提交 --> <!-- <input type="submit" value="提交"> --> </form> </div> <script> Vue.config.productionTip = false new Vue({ el: "#container", data: { user: { username: "", password: "", age: "", sex: "", hobby: [], city: "", desc: "", agree: "", } }, methods: { submit(event){ console.log("提交表单") // 在form内,参数自动提交 console.log(JSON.stringify(this.user)) }, }, }) </script> </body> </html>
模板过滤器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>模板过滤器</title> <script src="/static/js/vue.js"></script> <script src="/static/js/dayjs.min.js"></script> </head> <body> <div id="container"> <!-- 过滤器 --> <span>{{ time | timeFormatter}}</span><br> <!-- 传参数的过滤器 第一个参数永远是管道数据--> <span>{{ time | timeFormatter("YY-MM-DD hh:mm:ss")}} </span> <!--也可以多个过滤器串联--> </div> <script> Vue.config.productionTip = false //全局过滤器,所有组件中都可以使用 Vue.filter("myFilter", function(value){ return '全局过滤' }) new Vue({ el: "#container", data: { time: 1639579694662, //时间戳,不是字符串 }, //局部过滤器,组件内部使用 filters: { timeFormatter(time, format){ // 第一个参数 if(format){ return dayjs(time).format(format) }else{ return dayjs(time).format("YYYY-MM-DD HH:mm:ss") } }, }, }) </script> </body> </html>
过滤器的使用场景
1.插值语法中使用
2.v-bind:属性 =‘ xx| xx '
处理一些简单的操作,产生了新数据
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注自由互联的更多内容!

