使用v-model实现计算器的案例

简介: 一、使用v-model实现计算器二、代码

使用v-model实现计算器的案例

 

目录

一、使用v-model实现计算器

二、代码

 

 

一、使用v-model实现计算器


创建界面,第一步input,创建数据绑定n1并使用v-model,接下来创建select框,option加减乘除4个选项,再创建一个input,创建数据绑定n2并使用v-model,再创建一个buttonresult。刷新浏览,可以看到这三个框绑定了n1n2result

 

首先要在data定义这三个属性:data: {n1:0,n2:0,result:0}

image.png

可以看到算术符号也属于表单元素,添加操作符option(这里简写为optv-model绑定到data,默认为加号。


为了使等号有一个计算的方法,需要增加触发@click=calc"的方法,在data有一个平级methods,添加switch(this.opt){case ‘+’:},由于n1或者n2有可能是字符串,所以添加this.result = parseInt(this.n1) + parseInt(this.n2)

 

这样应用逻辑就完成了,只要点击就会触发calc计算,计算完成之后就会重新给result赋值。那么model被修改了,所以model元素也被修改了,vm会自动同步到页面中去。

 

刷新浏览可以查看计算.

image.png

image.png

有个投机取巧的方式:有个函数叫eval,它能把字符串解析执行,然后拿到执行结果。

 

添加var codeStr = ‘parseInt(this.n1)’ + this.opt + ‘parseInt(this.n2)’这样得到字符串代码,然后把这个字符串代码用eval解析,就会执行。

解析的结果就反回result

image.png

注意:

这个方法是投机取巧的,在将来项目里面发现其他方法都很麻烦时可以用一下,尽量少用。

 

二、代码


<head>

<meta charset="UPr-8">

<meta name="viewport" content="width=device-widthinitial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>Document</title>

<script src=" . /lib/vue-2.4.0.js"></script>

</head>

 

<body>

     <div id=”app”>

     <input type=”text” v-model=”n1”>

     

<select v-model=”opt”>

     <option value="+">+</option>

<option value="-">-</ option>

<option value="*">*</ option>

<option value="/">/</option>

</select>

 

<input type="text" v-model="n2">

 

<input type="button" value="=" @click=”calc”>

 

imput type="text" v-model="result">

</div>

     

<script>

//创建vue 实例,得到ViewMode1

var vm= new vue ({

el: ‘#app’,

data: {

     n1:0,

     n2:0,

     result:0,

     opt: ‘+’

},

methods: {

     

calc(){ //计算器算数的方法

     //逻辑:

/* switch(this.opt){

     case ‘+’:

this.result = parseInt(this.n1) + parseInt(this.n2)

           break;

     case ‘-’:

this.result = parseInt(this.n1) - parseInt(this.n2)

 

           break;

     case ‘*’:

this.result = parseInt(this.n1) * parseInt(this.n2)

 

           break;

     case ‘/’:

this.result = parseInt(this.n1) / parseInt(this.n2)

 

           break;

} */

 

//注意:这是投机取巧的方式,正式开发中,尽量少用

var codeStr = ‘parseInt(this.n1)’ + this.opt + ‘parseInt(this.n2)’

this.result = eval(codeStr)

}

}

           });

</script>

</body>

相关文章
|
4月前
|
安全 Serverless Python
用Python实现计算器功能
用Python实现计算器功能
63 1
|
10月前
|
Java
Java实现计算器demo
Java实现计算器demo
71 1
|
4月前
|
算法 测试技术 UED
Python实现计算器的设计与实现
Python实现计算器的设计与实现
208 0
|
Java
从计算器小例子的总结思考
从计算器小例子的总结思考
118 0
|
4月前
|
存储 Python
Python input()输入多个变量代码
据个人的开发经验,Python的input()函数要用于输入多个变量需要结合Python的另外一个内置方法split()来完成,其中当字符串对象调用split()方法可以用于拆分该字符串对象,因此要input()函数获取多个变量,输入数据的时候,
61 1
|
Python
python实现简单的计算器 带界面
python实现简单的计算器 带界面
255 0
python实现简单的计算器 带界面
|
Python
python编程 input输入函数
本章将会讲解输入与输出中的 input()输入函数
192 0
python编程 input输入函数
|
JavaScript 开发者
使用 v-model 实现计算器的案例|学习笔记
快速学习使用 v-model 实现计算器的案例
136 0
使用 v-model 实现计算器的案例|学习笔记
|
小程序 Python
【python学习小案例】提高兴趣之BMI计算器
✨前言 今天分享一个BMI指数计算小程序 可以使用自己编写的程序随时监测自己的BMI哦!!!
【python学习小案例】提高兴趣之BMI计算器
Python 创建能根据输入计算BMI指数的函数
Python 创建能根据输入计算BMI指数的函数