V-bind缩写、V-on缩写、V-if、V-show、V-for、Computed计算属性、methods属性、监听属性watch实例

V-bind、V-for缩写

请添加图片描述

在这里插入图片描述
在这里插入图片描述

V-model

在这里插入图片描述

V-if

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

V-show

在这里插入图片描述

在这里插入图片描述

V-for

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Computed计算属性

在这里插入图片描述

在这里插入图片描述
声明了一个计算属性 reversedMessage 。

提供的函数将用作属性 vm.reversedMessage 的 getter 。

vm.reversedMessage 依赖于 vm.message,在 vm.message 发生改变时,vm.reversedMessage 也会更新。

computed vs methods

我们可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值。而使用 methods ,在重新渲染的时候,函数总会重新调用执行。

computed setter

computed 属性默认只有 getter ,不过在需要时你也可以提供一个 setter

监听属性watch

几个实例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
</head>
<body>
<div id = "app"><p style = "font-size:25px;">计数器: {{ counter }}</p><button @click = "counter++" style = "font-size:25px;">点我</button>
</div>
<script type = "text/javascript">var vm = new Vue({el: '#app',data: {counter: 1}});vm.$watch('counter', function(nval, oval) {alert('计数器值的变化 :' + oval + ' 变为 ' + nval + '!');});
</script>
</body>
</html>

km与m的换算:

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title></title><script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
</head><body><div id = "computed_props">千米: <input type = "text" v-model = "kilometers">米 : <input type = "text" v-model = "meters"></div><p id="info"></p><script type = "text/javascript">var vm = new Vue({el: '#computed_props',data: {kilometers : 0,meters:0},methods: {},computed :{},watch : {kilometers:function(val) {this.kilometers = val;this.meters = this.kilometers * 1000},meters : function (val) {this.kilometers = val/ 1000;this.meters = val;}}});// $watch 是一个实例方法vm.$watch('kilometers', function (newValue, oldValue) {// 这个回调将在 vm.kilometers 改变后调用document.getElementById ("info").innerHTML = "修改前值为: " + oldValue + ",修改后值为: " + newValue;})</script></body>
</html>

购物车:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<style>table {border: 1px solid black;}table {width: 100%;}th {height: 50px;}th,td {border-bottom: 1px solid #ddd;}
</style><body><script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script><div id="app"><table><tr><th>序号</th><th>商品名称</th><th>商品价格</th><th>购买数量</th><th>操作</th></tr><tr v-for="iphone in Ip_Json"><td>{{ iphone.id }}</td><td>{{ iphone.name }}</td><td>{{ iphone.price }}</td><td><button v-bind:disabled="iphone.count === 0" v-on:click="iphone.count-=1">-</button>{{ iphone.count }}<button v-on:click="iphone.count+=1">+</button></td><td><button v-on:click="iphone.count=0">移除</button></td></tr></table>总价:${{totalPrice()}}</div><script>var app = new Vue({el: '#app',data: {Ip_Json: [{id: 1,name: 'iphone 8',price: 5099,count: 1},{id: 2,name: 'iphone xs',price: 8699,count: 1},{id: 3,name: 'iphone xr',price: 6499,count: 1}]},methods: {totalPrice: function () {var totalP = 0;for (var i = 0, len = this.Ip_Json.length; i < len; i++) {totalP += this.Ip_Json[i].price * this.Ip_Json[i].count;}return totalP;}}})</script>
</body></html>

城市选择:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script><div id="app">省份:<select v-model="province"><option selected="selected">请选择</option><option v-bind:value="p" v-for="p in provinces">{{p}}</option></select>城市:<select v-model="city"><option selected="selected">请选择</option><option v-bind:value="c" v-for="c in cityList">{{c}}</option></select></div><script>var vm = new Vue({el: '#app',data: {city: '请选择',province: '请选择',provinces: ['广东', '湖南', '湖北', '北京'],cityList: [],area: [{name: '广东',id: 1,child: ['广州', '深圳', '东莞']},{name: '湖南',id: 2,child: ['长沙', '株洲', '湘潭']},{name: '湖北',id: 3,child: ['武汉']},{name: '北京',id: 4,child: ['北京']}]},watch: {province: function (nval, oval) {var self = this;var cityList = [];if (nval == '请选择') {this.citylist = [];}if (nval != oval) {for (var i = 0; i < self.area.length; i++) {if (self.area[i].name == nval) {cityList = self.area[i].child;}}this.city = "请选择";this.cityList = cityList;}}}})</script>
</body></html>

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

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

相关文章

性能优化(CPU优化技术)-NEON指令介绍

「发表于知乎专栏《移动端算法优化》」 本文主要介绍了 NEON 指令相关的知识&#xff0c;首先通过讲解 arm 指令集的分类&#xff0c;NEON寄存器的类型&#xff0c;树立基本概念。然后进一步梳理了 NEON 汇编以及 intrinsics 指令的格式。最后结合指令的分类&#xff0c;使用例…

如何在容器内部进行抓包

//先获取POD 的容器ID号 //去pod容器所在节点进行解析id为pid号 //通过pid号进入这个容器的网络命名空间 docker inspect --format {{.State.Pid}} 05f38d2a61e29b5a9d24fc7a3906991ab92ecd58ff7e0eb4e339a4cc6b2c4fc4 //访问容器内部&#xff0c;Node01节点

MATLAB初始化智能算法编码-产生随机不重复整数序列矩阵

产生随机不重复整数序列矩阵是智能算法最常用的操作之一,以下给出具体方法: clc;close all;clear all;warning off;%清除变量 rand(seed, 100); randn(seed, 100); format long g; N10; % 设定优化问题维数 lb0*ones(1,N);% 自变量上限 ub1*ones(1,N);% 自变量下限 popsize10…

​在 Linux ​中管理用户

在 Linux 系统中&#xff0c;用户是系统资源的主要使用者&#xff0c;每个用户都有一个唯一的标识符&#xff08;用户ID&#xff09;。为了更好地组织和管理用户&#xff0c;Linux 还引入了用户组的概念。用户组是用户的集合&#xff0c;有助于更有效地分配权限和资源。 用户是…

mysql 导入数据 1273 - Unknown collation: ‘utf8mb4_0900_ai_ci‘

前言: mysql 导入数据 遇到这个错误 1273 - Unknown collation: utf8mb4_0900_ai_ci 具体原因没有深究 但应该是设计数据库的 字符集类型会出现这个问题 例如: char varchar text..... utf8mb4 类型可以存储表情 在现在这个时代会用很多 以后会用的更多 所以不建议改…

react 实现页面状态缓存(keep-alive)

前言&#xff1a; 因为 react、vue都是单页面应用&#xff0c;路由跳转时&#xff0c;就会销毁上一个页面的组件。但是有些项目不想被销毁&#xff0c;想保存状态。 比如&#xff1a;h5项目跳转其他页面返回时&#xff0c;页面状态不丢失。设想一个 页面我滑倒了中间&#xf…

Java实现桃花峪滑雪场租赁系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 游客服务2.2 雪场管理 三、数据库设计3.1 教练表3.2 教练聘请表3.3 押金规则表3.4 器材表3.5 滑雪场表3.7 售票表3.8 器材损坏表 四、系统展示五、核心代码5.1 查询教练5.2 教练聘请5.3 查询滑雪场5.4 滑雪场预定5.5 新…

AI创作之旅:探索提示工程的奇妙世界

&#x1f482; 个人网站:【 海拥】【神级代码资源网站】【办公神器】&#x1f91f; 基于Web端打造的&#xff1a;&#x1f449;轻量化工具创作平台&#x1f485; 想寻找共同学习交流的小伙伴&#xff0c;请点击【全栈技术交流群】 在当今信息爆炸的时代&#xff0c;人工智能的发…

人工智能原理实验4(2)——贝叶斯、决策求解汽车评估数据集

&#x1f9e1;&#x1f9e1;实验内容&#x1f9e1;&#x1f9e1; 汽车数据集 车子具有 buying,maint,doors,persons,lug_boot and safety六种属性&#xff0c;而车子的好坏分为uncc,ucc,good and vgood四种。 &#x1f9e1;&#x1f9e1;贝叶斯求解&#x1f9e1;&#x1f9e1;…

苹果笔记本MacBook电脑怎么卸载软件?三种方法快速卸载软件

苹果笔记本MacBook电脑是一款非常流行的电脑&#xff0c;但是有时候我们可能需要卸载一些不需要的软件。下面是一些简单的步骤&#xff0c;可以帮助您在MacBook电脑上卸载软件。 苹果笔记本MacBook电脑怎么卸载软件&#xff1f;三种实用方法快速卸载软件&#xff01; 方法一&a…

opencv#30 线性滤波

均值滤波原理 均值滤波步骤 Step1:求和。 Step2:计算平均值。 所谓均值滤波&#xff0c;就是求平均值的意思。我们假设在一个3*3的范围内有一个图像&#xff0c;其中这个图像每一个像素可能含有噪声&#xff0c;也可能不含噪声&#xff0c;我们是不知道的&#xff0c;因此通…

当pytest遇上poium会擦出什么火花

当pytest遇上poium会擦出什么火花 首先&#xff0c;创建一个test_sample/test_demo.py 文件&#xff0c;写入下面三行代码。 def test_bing(page):page.get("https://www.bing.com")assert page.get_title "必应"不要问题 page 从哪里来&#xff0c;打开…