用vue3写一个计算机包含四则运算和0-9数字,代码标明注释
时间: 2024-09-12 12:09:47 浏览: 73
在 Vue3 中创建一个简单的计算器应用,可以包括四则运算和0-9数字的输入,下面是一个基础的示例代码,带有一些注释:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Vue Calculator</title>
<!-- 引入 Vue.js 和 Vue Router -->
<script src="https://cdn.jsdelivr.net/npm/vue@3"></script>
<script src="https://cdn.jsdelivr.net/npm/@vue-router/dist/vue-router.esm.min.js"></script>
</head>
<body>
<div id="app">
<!-- 使用 v-if 切换显示模式 -->
<template v-if="isDisplayMode">
<input type="text" v-model.number="result" disabled>
<button @click="clear">C</button>
</template>
<template v-else>
<form @submit.prevent="calculate">
<input type="number" v-model.number="num1" placeholder="Number 1">
<select v-</option>
<option>*</option>
<option>/</option>
</select>
<input type="number" v-model.number="num2" placeholder="Number 2">
<button type="submit">=</button>
</form>
</template>
</div>
<script>
// 创建 Vue 实例
new Vue({
el: '#app',
data: {
num1: '',
num2: '',
operator: '+',
result: '', // 结果存储在数据里
isDisplayMode: false // 开始时计算器处于计算模式
},
methods: {
calculate() {
// 当用户点击等于按钮时计算结果
const num1 = parseFloat(this.num1);
const num2 = parseFloat(this.num2);
switch (this.operator) {
case '+':
this.result = num1 + num2;
break;
case '-':
this.result = num1 - num2;
break;
case '*':
this.result = num1 * num2;
break;
case '/':
// 检查除数是否为零
if (num2 !== 0) {
this.result = num1 / num2;
} else {
alert('Error: Division by zero');
}
break;
}
// 清空输入框,切换到显示模式
this.isDisplayMode = true;
this.num1 = '';
this.num2 = '';
},
clear() {
// 清除结果显示
this.result = '';
this.isDisplayMode = false; // 切回输入模式
}
}
});
</script>
</body>
</html>
```
阅读全文