Vue初学-简易计算器

news2024/11/15 18:00:55

最近在学习Vue的指令,做了一个简易计算器,比较适合刚入门的人参考学习。用到的知识点有:
1.插值表达式
2.v-model,双向绑定+、-、*、/、**等操作符
3.v-show,控制操作数2是否显示,乘方时不显示操作数2
4.methods选项,定义了calculate ()方法,实现各种运算
5.watch选项,监听selected的值的变化。
下面是程序的执行效果:
在这里插入图片描述

如果选择的是**乘方,操作数2不显示,这是利用v-show控制实现的,如图所示。
在这里插入图片描述
参考代码如下。

<!DOCTYPE html>
<html>
<head>
    <title>项目2-1简易计算器</title>
    <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
</head>
<body>
    <div id="app">
        <div class="calc">
            <h3>简易计算器</h3>
            <p> 操作数1 <input type="number" v-model="oper1" class="operand" /></p>
            <p class="opera"> 运算符
                <input type="radio" name="operator" value="+" v-model="selected">+
                <input type="radio" name="operator" value="-" v-model="selected">-
                <input type="radio" name="operator" value="*" v-model="selected">x
                <input type="radio" name="operator" value="/" v-model="selected"><input type="radio" name="operator" value="**" v-model="selected">**
            </p>
            <p>
                <span v-show="isSeen">操作数2 <input type="number" v-model="oper2" class="operand" /></span>
            </p>
            <p> <button @click="calculate">计算=</button></p>
            <div>
                <div class="fs22">结果:{{result}}</div>
            </div>
        </div>
    </div>
</body>
<script type="text/javascript">
    const RootComponent = {  //创建根组件
        data() {
            return {
                isSeen: true,
                selected: '',
                oper1: '',
                oper2: '',
                result: '',
            }
        },
        methods: {
            calculate () {
                if (this.selected === '') {
                    alert("请选择运算符")
                    return
                }
                switch (this.selected) {
                    case "+":
                        this.result = this.oper1 + this.oper2
                        break
                    case "-":
                        this.result = this.oper1 - this.oper2
                        break
                    case "*":
                        this.result = this.oper1 * this.oper2
                        break
                    case "/":
                        this.result = (this.oper1 / this.oper2).toFixed(2)
                        break
                    case "**":
                        this.result = this.oper1 * this.oper1
                        break
                }
            }
        },
        watch: {
            selected(newValue, oldValue) {
                if (newValue === "**") {
                    this.isSeen = false
                } else {
                    this.isSeen = true
                }
            }
        }
    }
    //创建Vue应用实例并挂载到#app
    const vueApp = Vue.createApp(RootComponent)    
    vueApp.mount("#app")
</script>
<style>
    .calc {
        width: 600px;
        margin: 0 auto;
    }
    .operand {
        width: 120px;
        height: 30px;
        font-size: 20px;
    }
    .opera input {
        margin-left: 20px;
    }
    button {
        width: 80px;
        height: 40px;
        background-color: #339f63;
        color: #fff;
        font-size: 18px;
        border-color: #ccc;
        border-radius: 5px;
    }
    .fs22 {
        font-size: 22px;
        color: red;
    }
</style>
</html>

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

‌软媒市场—‌软媒市场自助发布平台引领数字营销新风尚

在当今这个信息爆炸的时代,数字营销已经成为企业推广品牌、提升知名度的关键手段。而在众多数字营销工具中,‌软媒市场自助发布平台以其独特的优势脱颖而出,成为众多企业的首选。今天,我们就来深入探讨一下软文媒体自助发布平台如何在软媒市场中发挥重要作用,以及其背后的5万家…

FRP代理(TCP通信)实验

攻击机器---公网机器&#xff08;FRP服务端&#xff09;-TCP传输rdp内容--内网机器&#xff08;FRP客户端&#xff09;--内网本地&#xff08;RDP服务&#xff09; FRP版本&#xff1a;0.49.0 公网IP&#xff08;FRP服务端&#xff09;&#xff1a;192.168.254.131 内网&…

Mindspore 初学教程 - 4. 数据集 Dataset

数据是深度学习的基础&#xff0c;MindSpore 提供基于 Pipeline 的 数据引擎&#xff0c;通过数据集 数据集&#xff08;Dataset&#xff09; 和 数据变换&#xff08;Transforms&#xff09; 实现高效的数据预处理。其中 Dataset 是 Pipeline 的起始&#xff0c;用于加载原始数…

# centos7 安装 mysql

centos7安装mysql 1、添加 mysql 官方 yum 存储库 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpmrpm -ivh mysql80-community-release-el7-3.noarch.rpm2、使用Yum安装MySQL服务器&#xff1a; sudo yum install mysql-server3、启动MySQL服务…

Redis集群技术2——redis基础

Redis安装 Redis 的安装相对简单&#xff0c;无论是 Windows、Linux 还是 macOS 系统&#xff0c;都有相应的安装方法。以下是针对不同操作系统的 Redis 安装简述。 1. Linux 系统安装 Redis 在 Linux 系统中安装 Redis 通常有多种方式&#xff0c;这里以 Ubuntu 和 CentOS 为…

配置阿里云千问大模型--环境变量dashscope

1 开通百炼 首先要进入到阿里云平台&#xff0c;然后进入百炼平台。 2 获取API-KEY 进入之后再右上角可以查看到自己的API-KEY&#xff0c;这个东西就是需要配置在环境变量里的。 点击查看就可以获取 3 配置DASHSCOPE环境变量 如果使用dashscope来进行千问大模型的API对…

速度滞后补偿控制

这里介绍的速度滞后补偿控制和我们前面介绍的前馈控制有所区别&#xff0c;前馈控制的前提是能够获取位置参考指令的速度或加速度信号。在无法获取位置参考指令的上述性息的前提下&#xff0c;我们可以采用速度滞后补偿控制提高机电伺服控制系统动态跟踪精度。前馈控制的一些基…

2024社区版IDEA springboot日志输出颜色

IDEA版本&#xff1a;IntelliJ IDEA 2024.1.4 (Community Edition) 1、纯白色终端 2、彩色终端 3、配置过程 1、打开配置 2、选择启动类 3、点击修改选项&#xff0c;勾选虚拟机选项 4、在虚拟机选项框输入以下代码 -Dspring.output.ansi.enabledALWAYS5、应用确定&#xff0…

NLP从零开始------18.文本中阶处理之序列到序列模型(3)

4.3 其他解码问题和解码技巧 贪心解码和束解码只是最基础的解码方法&#xff0c;其解码结果会出现许多问题。这里主要介绍3种常见问题&#xff0c;并简单介绍解决方案。 4.3.1 重复性问题 有时我们会发现序列到序列模型不断重复的输出同一个词。一个解决方案是解码时在所预测的…

GateWay三大案例组件

一、局部过滤器接口耗时&#xff08;LogTime&#xff09; 命名规则&#xff1a;以GatewayFilterFactory结尾编写接口耗时过滤器 Slf4j Component public class LogTimeGatewayFilterFactory extends AbstractNameValueGatewayFilterFactory {private static long timeSpan 0…

ruoyi-vue-pro快速修改的包名和选配功能板块

使用KIT进行构建 KIT是一个专门构建框架的网站&#xff0c;ruoyi-vue-pro也发布至KIT了&#xff0c;所以我们可以通过KIT快速的选配功能和修改报名等操作。 构建地址&#xff1a;http://www.goldpankit.com/space/service/install?space%E8%8A%8B%E9%81%93%E6%BA%90%E7%A0%8…

AI建模——AI生成3D内容算法产品介绍与模型免费下载

说明&#xff1a; 记录AI文生3D模型、图生3D模型的相关产品&#xff1b;记录其性能、功能、收费与免费方法 0.AI建模产品 Rodin MeshAnything Meshy 生成效果比较&#xff1a; Rodin效果最好、Meshy其次 1.Rodin 官网&#xff1a;gHyperHuman 支持&#xff1a;文生模型、…

TextIn ParseX:助力开发者解析版面元素信息

TextIn ParseX通用文档解析是一款大模型友好的解析工具&#xff0c;支持将pdf文档、jpg、img图像等文件快速转换为markdown格式&#xff0c;支持各类表格、公式解析&#xff0c;帮助大语言模型的数据清洗和文档问答任务。 产品特点 支持多种扫描内容&#xff1a;能良好处理各类…

[数据集][目标检测]西红柿缺陷检测数据集VOC+YOLO格式17318张3类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;17318 标注数量(xml文件个数)&#xff1a;17318 标注数量(txt文件个数)&#xff1a;17318 标…

ORA-24067: exceeded maximum number of subscribers for queue ADMIN.SMS_MT_QUEUE

临时处理办法&#xff1a; delete from aq$_ss_MT_tab_D; delete from aq$_ss_MT_tab_g; delete from aq$_ss_MT_tab_h; delete from aq$_ss_MT_tab_i; delete from aq$_ss_MT_tab_p; delete from aq$_ss_MT_tab_s; delete from aq$_ss_MT_tab_t; commit; 根本处理办法&#x…

IIS 反向代理模块: URL Rewrite 和 Application Request Routing (ARR)

需要设置iis反向代理的场景其实挺多的。例如websocket、Server Sent Events(SSE) 都需要反向代理。 对于需要临时放公网访问的应用&#xff0c;直接运行127.0.0.1的开发环境&#xff0c;然后通过反向代理访问127.0.0.1就可以了&#xff0c;省去麻烦的iis设置。 IIS 实现反向代…

学习记录:js算法(二十五):合并两个有序链表

文章目录 合并两个有序链表我的思路网上思路 总结 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 图一 示例 1&#xff1a;&#xff08;如图一&#xff09; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] …

解决职业摔跤手分类问题的算法与实现

解决职业摔跤手分类问题的算法与实现 引言问题定义算法设计二分图判定算法步骤伪代码C语言实现引言 在职业摔跤界,摔跤手通常被分为“娃娃脸”(“好人”)型和“高跟鞋”(“坏人”)型。在任意一对摔跤手之间,都有可能存在竞争关系。本文的目标是设计一个算法,用于判断是…

优化采样参数提升大语言模型响应质量:深入分析温度、top_p、top_k和min_p的随机解码策略

当向大语言模型(LLM)提出查询时&#xff0c;模型会为其词汇表中的每个可能标记输出概率值。从这个概率分布中采样一个标记后&#xff0c;我们可以将该标记附加到输入提示中&#xff0c;使LLM能够继续输出下一个标记的概率。这个采样过程可以通过诸如 temperature和 top_p等参…

openSUSE变更默认编译器

Debian很稳定&#xff0c;但是必须要添加unstable源才能安装一些需要更新的软件&#xff0c;比如说稳定版的firefox是ESR版的&#xff0c;必须要从unstable源才能安装新版。但是unstable源是把所有的软件包都放在里面&#xff0c;操作过程中一旦不小心把核心组件更新到unstable…