v-model数据双向绑定
a) 作用:数据双向绑定
b) 注意:绑定的是表单控件
c) 示例:计算器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script> </head> <body> <div id='app'> <input type="text" v-model:value="num1"> <select name="" id="" v-model:value="value"> <option value="+">+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option> </select> <input type="text" v-model:value="num2"> <button @click="getSum">=</button> <input type="text" v-model:value="sum"> </div> </body> <script> let vue = new Vue({ el: '#app', data: { value: "+", num1: "", num2: "", sum: "", }, methods: { getSum() { // 1、eval()计算字符串,慎用 // this.sum = eval(`${Number(this.num1)} ${this.value} ${Number(this.num2)}`) // 2、if判断 // if (this.value == "+") { // this.sum = Number(this.num1) + Number(this.num2) // } else if (this.value == "-") { // this.sum = Number(this.num1) - Number(this.num2) // } else if (this.value == "*") { // this.sum = Number(this.num1) * Number(this.num2) // } else { // this.sum = Number(this.num1) / Number(this.num2) // } // 3、switch case switch (this.value) { case "+": this.sum = Number(this.num1) + Number(this.num2); break;//结束本次判断,程序不往下执行 case "-": this.sum = Number(this.num1) - Number(this.num2); break; case "*": this.sum = Number(this.num1) * Number(this.num2); break; case "/": this.sum = Number(this.num1) / Number(this.num2); break; } } } }) </script> </html>