v-model的小案例---计算器的实现

第一种方法:

<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>

    <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">

        <!-- 点击等号算出结果 -->

        <button @click="calc">=</button>

        <!-- 最终的计算结果 -->

        <input type="text" v-model="result">

    </div>

    <script>

        new Vue({

            el: "#app",

            data: {

                n1: 0,

                n2: 0,

                result: 0,

                opt: '+'

            },

            methods: {

                calc() {

                    switch (this.opt) {

                        case '+':

                            this.result = Number(this.n1) + Number(this.n2)

                            break;

                        case '-':

                            this.result = Number(this.n1) - Number(this.n2)

                            break;

                        case '*':

                            this.result = Number(this.n1) * Number(this.n2)

                            break;

                        case '/':

                            this.result = Number(this.n1) / Number(this.n2)

                            break;

                    }

                }               

            }

        })

    </script>

第二种方法:

 

<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>

    <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">

        <!-- 点击等号算出结果 -->

        <button @click="calc">=</button>

        <!-- 最终的计算结果 -->

        <input type="text" v-model="result">

    </div>

new Vue({

            el: "#app",

            data: {

                n1: 0,

                n2: 0,

                result: 0,

                opt: '+'

            },

            methods: {

                calc() {                 

                    calc(){

                     var codestr='Number(this.n1) '+this.opt+ 'Number(this.n2)'

                     this.result=eval(codestr)

                    }

            }

        })

    </script>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值