使用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>

相关文章
|
8月前
|
安全 Serverless Python
用Python实现计算器功能
用Python实现计算器功能
91 1
|
Java
Java实现计算器demo
Java实现计算器demo
78 1
|
7月前
|
C#
C#||应用框体设计计算器
C#||应用框体设计计算器
|
8月前
|
算法 测试技术 UED
Python实现计算器的设计与实现
Python实现计算器的设计与实现
317 0
|
Java
计算器的模拟实现
计算器的模拟实现
100 0
|
算法 前端开发 存储
前端算法-计算器
前端算法-计算器
|
Java 数据安全/隐私保护 容器
背记不如实战系列-javaGUI实例-计算器制作
背记不如实战系列-javaGUI实例-计算器制作
99 0
|
Python
python实现简单的计算器 带界面
python实现简单的计算器 带界面
302 0
python实现简单的计算器 带界面
|
JavaScript 开发者
使用 v-model 实现计算器的案例|学习笔记
快速学习使用 v-model 实现计算器的案例
164 0
使用 v-model 实现计算器的案例|学习笔记
|
小程序 Python
【python学习小案例】提高兴趣之BMI计算器
✨前言 今天分享一个BMI指数计算小程序 可以使用自己编写的程序随时监测自己的BMI哦!!!
【python学习小案例】提高兴趣之BMI计算器

热门文章

最新文章

下一篇
开通oss服务