Vue监测添加的数据(一)

直接往数据源身上添加数据,添加的数据不会被监测

修改数据源中的数据(数据在data中),修改的数据会被vue检测到,并实时在页面展示

通过数据源本体改变的方式添加数据,添加的数据会被监测

可以复制到html文件中直接运行

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
</head>

<body>
    <div id="id">
        <!-- num是被vue检测到的 -->
        {{num}}
        <button @click="num++">+1</button>
        <button @click="num--">-1</button>
        <hr>

        <!-- 点击按钮,直接往tableData这个数组中添加数据,添加的数据不会被检测到 -->
        {{data.item}}
        <button @click="addData">点击调用方法直接往data里面添加数据</button>
        <!-- 改变这个数据,查看是否会检测到改变 -->
        <button @click="data.item++">data.item+1</button>
        <hr>

        <!-- 点击按钮,点击调用方法修改dataHaveItem中的数据,修改的数据会被检测到 -->
        {{dataHaveItem.item}}
        <button @click="addDataHaveItem">点击调用方法修改dataHaveItem中的数据</button>
        <!-- 改变这个数据,查看是否会检测到改变 -->
        <button @click="dataHaveItem.item++">dataHaveItem.item+1</button>
        <hr>

        <!-- 点击按钮,间接往tableData这个数组中添加数据,添加的数据会被检测到 -->
        {{dataBy.itemBy}}
        <button @click="addDataBy">点击调用方法替换dataBy对象</button>
        <button @click="dataBy.itemBy++">dataBy.itemBy+1</button>
    </div>

</body>



<!-- import Vue before Element -->
<!-- 2.5.2 -->
<script src="https://cdn.staticfile.org/vue/2.5.2/vue.js"></script>

<!-- import JavaScript -->
<script src="https://cdn.staticfile.org/element-ui/2.4.5/index.js"></script>

<script>
    new Vue({
        el: '#id',

        data() {
            return {
                // 表格中的使用的数据
                data: {},
                dataHaveItem: {
                    item: 0
                },
                dataBy: {},
                num: 0
            };
        },

        methods: {
            // 点击直接添加数据(不会被vue检测到)
            addData() {
                this.data.item = 1
            },

            // 点击添加数据(会被vue检测到)
            addDataHaveItem(){
                this.dataHaveItem.item = 1
            },

            // 点击间接添加数据(添加的数据会被vue检测到)
            addDataBy() {
                let obj = {}
                obj.itemBy = 1
                this.dataBy = obj
            }
        },

    })
</script>

</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值