js循环方式、v-model、事件处理、表单控制、购物车案例

news/发布时间2024/5/16 8:03:35

js循环方式

js循环 for(),基于索引的循环

let :es6语法,用于定义变量

const:用于定义常量

var以后尽量少用

、for循环写法一:

 for循环写法二:

 列表循环

 循环方式二:in循环

基于迭代的循环,依赖于索引取值

直接console.log是索引值,只有list[i]才是要取的值

 循环方式三:of循环

和python中的in一样,这个直接console.log是要取的值

 数组的方法:循环 forEach

第一个值是正常取值,第二个值是索引值

 jq的取值

 key值的解释

vue中使用v-for的时候,在标签上会看到key属性

key = ''item'' 用的是属性指令

key对应的值必须是唯一的

在循环的标签上,加key值的好处是,加速dom的替换

区别只在循环的变量变化时,效率高低,但是一定要注意的是:value必须是唯一

 

Vue.set的使用

以后可能遇到数据变了,页面没有变的情况

不能直接更改,要借助于vue提供的方法,Vue.Set更改

以后只要发现数据变了,页面没变,就先用Vue.set试一下

 代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.js"></script><link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet"><script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js"></script><script src="js/vue.js"></script>
</head>
<body>
<div id="app"><div class="container-fluid"><div class="row"><div class="col-md-6 col-md-offset-3"><div class="text-center"><button class="btn btn-danger" @click="handleshow">点击显示购物车</button><button class="btn btn-danger" @click="handledel">删除最后一条</button><button class="btn btn-danger" @click="handleres">反转</button><button class="btn btn-danger" @click="handlefirst">变更第一条</button></div><table class="table table-bordered"><thead><tr><th>id名</th><th>商品名称</th><th>商品价格</th><th>商品数量</th></tr></thead><tbody><tr v-for="i in good_list" v-show="isShow"><td>{{i.id}}</td><td>{{i.name}}</td><td>{{i.price}}</td><td>{{i.count}}</td></tr></tbody></table></div></div></div></div>
</body>
<script>var vm = new Vue({el: '#app',data: {good_list: [],isShow: false},methods: {handleshow() {this.good_list = [{id: 1, name: '钢笔', price: 9.9, count: 4},{id: 2, name: '足球', price: 99, count: 4},{id: 3, name: '篮球', price: 44, count: 32},{id: 4, name: '电脑', price: 1299, count: 48},{id: 5, name: '鼠标', price: 23, count: 4},{id: 6, name: '脸盆', price: 8, count: 4},]this.isShow = !this.isShow},handledel() {this.good_list.pop()}, handleres() {this.good_list.reverse()console.log(this.good_list)},handlefirst() {Vue.set(this.good_list, 0, {id: 1, name: '专辑', price: 200, count: 1})}}})
</script></html>

v-model的使用

v-model和value的区别,单项和双向的区别,v-model在控制台改变,页面数据也会改变,页面数据改变控制台也改变,:value="username" 对input标签做绑定,它只能单项的绑定,js变量变,页面会变,页面变,js变量不会变
v-model可以将结果返回,value不会,但是会将当前的值放入文本框中
v-model:

value:

<body>
<div id="app"><div class="container-fluid"><div class="row"><div class="col-md-6 col-md-offset-3"><div class="text-center"><h3>v-model的使用</h3><p>用户名:<input type="text" v-model="username" ></p><p>密码:<input type="password" v-model="password"></p><button class="btn btn-info" @click="handlelogin">登录</button></div></div></div></div></div></body>
<script>var vm = new Vue({el: '#app',data:{username:'',password:''},methods:{handlelogin(){console.log(this.username,this.password)}}})
</script>
</html>

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ulsteruni.cn/article/80434051.html

如若内容造成侵权/违法违规/事实不符,请联系编程大学网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

少年,该升级 Vue3 了!

Vue2 的终止支持时间是 2023 年 12 月 31 日,本文是一篇 Vue2 升级 Vue3 的指南,可帮助你快速从 Vue2 平滑升级到 Vue3。你好,我是 Kagol。 前言 根据 Vue 官网文档的说明,Vue2 的终止支持时间是 2023 年 12 月 31 日,这意味着从明年开始:Vue2 将不再更新和升级新版本,不…

MinIO分布式部署

目录先决条件网络和防火墙网络防火墙负载均衡顺序的主机名驱动器要求XFS格式性能最优最小IO顺序的驱动器名任意迁移时间同步考虑相同的硬软件环境存储容量规划推荐的操作系统预先存在的数据部署分布式MinIO在每一个节点上安装MinIO创建服务文件minio.service创建环境文件添加TL…

4-微信小程序 相关知识点代码示例

基于上篇文章的理论文本的介绍来进行相关代码的演示和例子 该篇文章需注意,在微信小程序的使用时,应先熟悉里面每个文件的作用,在第二篇文章有详细记载,一般用的比较多的是wxml、wxss、ws.js 对应网站的开发就是html、css、js、页面的内容及框架、页面的美化、页面的基本功…

服务器

ARM64、x86基础知识和区别 今天小编就带你深入了解CPU的这两大架构:ARM和X86。ARM ARM64是CPU构架的一种,通常用于手机、平板等CPU,目前笔记本电脑也会采用ARM64构架的CPU。 x86 x86是CPU构架的一种,通常用于笔记本电脑、台式电脑、服务器、超级计算机。作者:物非0人非 链…

组件功能

可视化 —— watch

米联客MLK-CM04-9EG-15EG AMD MPSOC核心模块硬件手册

1 整体概述 MLK-04-9EG/15EG-1156核心模块是米联客电子Zynq UltraScale+系列开发平台的全新高端产品。其核心模块集成电源管理:0.85V核心电源,最大输出48A。用户基于核心模块设计功能底板(提供功能底板设计方案)。降低项目功能底板设计难度和生产成本,加速项目开发。其应用…