天天看點

10. Vue 使用v-model實作電腦示例

需求

上一篇章介紹了使用v-model雙向綁定表單元素的value與Vue中的data資料,那麼利用該特性來寫一個加減乘除的電腦。

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <div id="app">

        <!-- 輸入電腦的第一個數 n1 -->
        <input type="text" v-model="n1">

        <!-- 設定加減乘除 -->
        <select v-model="opt">
            <option value="+">+</option>
            <option value="-">-</option>
            <option value="*">*</option>
            <option value="/">/</option>
        </select>

        <!-- 輸入電腦的第二個數 n2 -->
        <input type="text" v-model="n2">

        <!-- 設定等号=作為監聽事件,計算結果 -->
        <input type="button" @click="calc" value="=">

        <!-- 顯示結果的值 -->
        <input type="text" v-model="result">

    </div>

    <!--  1.導入vue.js庫  -->
    <script src="lib/vue.js"></script>

    <script>
        // 2. 建立一個Vue的執行個體
        var vm = new Vue({
            el: '#app',
            data: {
                n1: 0,
                n2: 0,
                result:0,
                opt: "+" // 設定預設為加法
            },
            methods:{
                calc(){
                    // 根據設定的計算方法進行計算
                    switch (this.opt) {

                        case "+": // 加法
                            this.result = parseFloat(this.n1) + parseFloat(this.n2);
                            break;

                        case "-": // 減法
                            this.result = parseFloat(this.n1) - parseFloat(this.n2);
                            break;

                        case "*": // 乘法
                            this.result = parseFloat(this.n1) * parseFloat(this.n2);
                            break;

                        case "/": // 除法
                            this.result = parseFloat(this.n1) / parseFloat(this.n2);
                            break;
                    }
                }
            }

        })
    </script>

</body>
</html>           

複制

浏覽器執行如下:

10. Vue 使用v-model實作電腦示例
10. Vue 使用v-model實作電腦示例
10. Vue 使用v-model實作電腦示例
10. Vue 使用v-model實作電腦示例