Vue 计数器

来自姬鸿昌的知识库
Jihongchang讨论 | 贡献2023年6月8日 (四) 13:46的版本
跳到导航 跳到搜索

https://www.bilibili.com/video/BV12J411m7MG/?p=10

<div class="input-num">
  <button @click>-</button>
  <span>{{}}</span>
  <button @click>+</button>
</div>

var app = new Vue({
  el:"#app",
  data:{
    num:1
  },
  methods:{
    add:function(){},
    sub:function(){}
  }
})
  1. data 中定义数据:比如 num
  2. methods 中添加两个方法:比如 add(递增),sub(递减)
  3. 使用 v-textnum 设置给 span 标签
  4. 使用 v-onadd, sub 分别绑定给 +,- 按钮
  5. 累加的逻辑:小于10累加,否则提示
  6. 递减的逻辑:大于0递减,否则提示
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Vue基础</title>
</head>

<body>
    <div id="app">
        <div class="input-num">
            <button @click="sub">
                -
            </button>
            <span>{{ num }}</span>
            <button @click="add">
                +
            </button>
        </div>
    </div>
    <!-- 开发环境版本,包含了有帮助的命令行警告 -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                num: 1
            },
            methods: {
                add: function () {
                    if (this.num < 10) {
                        this.num++;
                    } else {
                        alert("别点啦,最大啦!");
                    }

                },
                sub: function () {
                    if (this.num > 0) {
                        this.num--;
                    } else {
                        alert("别点啦,最小啦!");
                    }

                }
            }
        })
    </script>
</body>

</html>