计算器案例

计算器案例

计算器案例介绍,实现两个数值相加的功能。

知识点

计算属性

computed

在计算属性里面写方法,监听定义的变量,返回值为computed属性值。

类比python语言中的方法属性的定义,@property然后,定义方法,作为属性来使用。

前期准备

项目文件创建

vue环境导入

模板文件的创建

前期准备:

模板文件代码


<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>模板</title>
</head>
<body>
    <div id="app">

    </div>
</body>
<script src="js/vue.js"></script>
<script>
    new Vue({
        el:'#app',
    })
</script>
</html>

具体步骤:

1、在挂载点的标签内写标签,定义属性与变量

1-1、写两个输入框input标签,输入框输入类型为数字,用num1和num2来接收这两个变量

1-2、写一个p标签,p标签内写差值运算{{}}的sum,用sum来接收num1和num2的运算结果,

<input type='number' v-model='num1'>+
<input type='number' v-model='num2'>=
<button>{{ sum }}</button>

2、数据初始化

new Vue({
		el:'#app',
	data:{
		num1:0,
		num2:0,
	},
})

3、写计算属性的方法

与vue中的其他实例成员是同一个级别的数据

根据语法写sum(){},在函数体内先进行一个逻辑判断,也就是如果两个输入框中都有数值传入,就计算出两个数值相加的结果,否则写结果两个字显示在按钮上,

computed:{
	sum(){
	if(this.num1 && this.num2)
		return +this.num1 + +this.num2;
	return '结果';
}
}

逻辑

有两个输入框的值,把这两个输入框的值相加,只要里面有两个输入框的值,都可以得到相加,最后得到一个结果,显示在按钮的标签中,当有其中一个数值已经确定,另外一个输入框中的数值更新,就会触发computed方法中被监听的变量,从而方法更新一遍,结果更新一遍。

整个代码手撸一遍如下:

<!DOCTYPE html>
<html lang='zh'>
<head>
 <meta charset='UTF-8'>
    <title>计算器案例</title>
</head>
<body>
    <div id='app'>
        <input type='number' v-model='num1'>+
        <input type='number' v-model='num2'>=
        <button>{{ sum }}</button>
    </div>
</body>
    <script src='js/vue.js'></script>
    <script>
        new Vue ({
            el:'#app',
            data:{
                num1:0,
                num2:0,
            },
            computed:{
                sum(){
                  if(this.num1 && this.num2){
                      return +this.num1 + +this.num2;
                  }  
                    return '结果'
                }
            }
        })
    </script> 
</html>

后记与总结

注意点

1、new vue({}),这样的语法格式不要写错,在大括号内写相应的逻辑体代码

2、if条件判断的语法是怎么样的?

if(){}这样的格式,不需要写else这样的关键字,大括号外面直接就是else的逻辑代码。

3、if判断条件里面的num1和num2是否都存在怎么判断?

用&&这样来判断,这是一个逻辑判断,如果两个变量值都存在,那么逻辑值就为真。

4、num初始值为设置的为字符串的0。

5、数值与字符串的相加转换?

也就是用到了整数与字符串的转换,用+来转换。

感想:

代码不多,主要是知识点的运用,理解实践一遍就好。能自己敲出来,没有问题,就是掌握了。

延伸的阅读就是:

Q:为什么要有这个计算属性?

A:一个变量依赖多个变量。

Q:一个变量依赖于多个变量的逻辑运算的应用场景是什么?

A:本次计算器案例是的。


实践发现的问题

1、所写的代码,不会都显示在页面代码中。
里面有一个用vue指令就只会渲染到页面中,但是不会再页面的HTML代码中显示出来,这个就是v-model的指令的内容,

2、监听与不监听的概念是什么?
在这个方法中,有任何一个值更新,方法就会被调用一次,会监听方法中的变量值。

3、一个是数据渲染的一次的概念,跟内存的联系是什么?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值