Vue学习之路第十篇:简单计算器的实现

前面九篇讲解了vue的一些基础知识,正所谓:学以致用,今天我们将用前九篇的基础知识,来模拟实现计算器的简单功能,项目价值不高,纯粹是为了加深掌握所学知识。

学前准备:

需要掌握JavaScript的eval()函数,其主要是用来计算某个字符串,并执行其中的 JavaScript 代码。

直接上代码(vue.min.js 第一篇有下载链接):

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>计算器功能简单模拟</title>
    <script type="text/javascript" src="js/vue.min.js"></script>
</head>
<body>
    <!-- 页面代码 -->
    <div id="app">
        <input type="text" v-model="n1"/>
        <select v-model="opt">
            <option>+</option>
            <option>-</option>
            <option>*</option>
            <option>/</option>
        </select>
        <input type="text" v-model="n2"/>
        <button @click="equal">=</button>
        <input type="text" v-model="result"/>
    </div>

     <!-- js代码 -->
    <script type="text/javascript">
        var vm = new Vue({
            el:"#app",
            data:{
                n1:0,
                n2:0,
                opt:‘-‘,
                result:0
            },
            methods:{
                equal(){
                    var optStr = ‘parseInt(this.n1)‘ + this.opt + ‘parseInt(this.n2)‘;
                    this.result = eval(optStr);
                }
            }
        });
    </script>
</body>
</html>

功能很简单,核心是利用双向数据绑定的原理,实现数据实时计算。n1和n2是参与计算的变量,result是计算结果,一开始都被初始化为0,操作符被初始化为减号,通过点击等于号button触发计算方法,计算的结果会被实时显示出来。计算方法中为了实现简单使用了eval()函数,其会把字符串解析出来,按照正常的计算逻辑计算结果。

每天进步一点点!

原文地址:https://www.cnblogs.com/shibin90/p/10327155.html

时间: 2024-08-29 14:52:04

Vue学习之路第十篇:简单计算器的实现的相关文章

Vue学习之路第七篇:跑马灯项目实现

前面六篇讲解了Vue的一些基础知识,正所谓:学以致用,今天我们将用前六篇的基础知识,来实现类似跑马灯的项目. 学前准备: 需要掌握定时器的两个函数:setInterval和clearInterval以及作用域的概念 上代码,大家可以复制下来直接运行看看效果(vue.min.js 第一篇有下载链接): <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"&g

Vue学习之路第八篇:事件修饰符

学习准备: ①.顾名思义,"事件修饰符"那么肯定是用来修饰事件,既然和事件有关系,那么肯定和"v-on"指令(也可简写为:@)有关系了. ②.事件修饰符有以下几类: .stop:阻止冒泡 .prevent:阻止默认事件 .capture:事件捕获 .self:只当事件在该元素本身触发时触发回调 .once:事件只触发一次 1.阻止冒泡 页面代码: <div id="app" @click="clickDiv()">

Vue学习之路第十七篇:过滤器的使用

1.过滤器 ①:Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化.过滤器可以用在两个地方:插值表达式和 v-bind 表达式 (后者从 2.1.0+ 开始支持).过滤器应该被添加在 JavaScript 表达式的尾部,由"管道"符号("|")指示.使用方式为:{{ msg | formatMsg}},其中msg为要被过滤的文本,formatMsg为过滤器名称. ②:过滤器的定义方式: Vue.filter('formatMsg',function(ms

vue学习之路 - 4.基本操作(下)

vue学习之路 - 4.基本操作(下) 简述:本章节主要介绍 vue 的一些其他常用指令. Vue 指令 这里将 vue 的指令分为系统内部指令(vue 自带指令)和用户自定义指令两种. 系统内部指令 v-if v-else v-else-if v-for v-on v-bind v-model 以上指令前面都已说明其作用,并且使用过,这里将不再赘述. 下面我们看看 vue 的一些其他常用指令的用法: 在学习 v-text 和 v-cloak 之前我们先看看{{ }}的使用所存在的问题. {{

后端开发者的Vue学习之路(二)

目录 上篇内容回顾: 数据绑定 表单输入框绑定 单行文本输入框 多行文本输入框 复选框checkbox 单选框radio 选择框select 数据绑定的修饰符 .lazy .number .trim 样式绑定 class绑定 对象语法: 数组语法: style绑定 对象语法: 数组语法: 补充: 事件 绑定事件 事件修饰符 按键修饰符 事件绑定的简写 补充: Vue指令 数组操作 官网的话 补充: Vue的元素复用问题 数据残留问题 问题的解决: 首发日期:2019-01-20 上篇内容回顾:

Python学习之路【第一篇】-Python简介和基础入门

1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是一种开发语言,而且已经进阶到主流的二十多种开发语言的top 5(数据源自最新的TIOBE排行榜). 来头不小啊!二十多种主流的开发语言,我该从哪一个开始呢?人生苦短,let‘s python! 1.2 Python的由来和发展趋势 Python的前世源自鼻祖“龟叔”.1989年,吉多·范罗苏姆(Gu

linux学习之路二 ------登陆篇

上一篇中讲了如何搭建虚拟机学习平台,在这篇中将介绍如何登陆Linux系统和修改超级用户密码 1.打开虚拟机后,进入界面,需要让我们输入账号密码,在前面安装的时候我们设置过.如图 2.输入账号密码,输入密码的时候是不显示的,所以不要认为没有输入.如图 3.验证成功之后,出现[[email protected] ~]$ ,则说明登陆成功,Linux系统有超级用户和普通用户之分,超级用户也就是root用户了,如我们的就是普通用户, 普通用户[[email protected] ~]$中$就是代表了普通

Extjs5.0 学习之路【资源篇】

磨刀不误砍柴工. 先收集资源,然后再开始学习之路. Extjs5.0 文件下载 关于extjs5.0优秀博文: http://blog.csdn.net/sushengmiyan/article/details/38331347 专栏 http://blog.csdn.net/column/details/sushengextjs5.html?&page=2

vue学习指南:第十二篇(详细) - Vue的 路由 第二篇 ( 路由按需加载(懒加载))

各位朋友 因 最近工作繁忙,小编停更了一段时间,快过年了,小编祝愿 大家 事业有成 学业有成 快乐健康 2020开心过好每一天.从今天开始 我会抽时间把 Vue 的知识点补充完整,以及后期会带给大家更完善的知识体系!!! 路由的按需加载(懒加载) 我们都知道 vue的路由是我们必学的,也是不可分离的一部分,我们传统引入路由的方式是这样的, import Home from '@/components/home/Home' 但是在真正项目的开发中,这种现象是杜绝的,是不建议使用这种传统方式引入的.