当前位置: 首页 > 知识库问答 >
问题:

Vue.js看深层物业

卫皓
2023-03-14

我试图查看vue.js对象的属性,但我没有得到我想要的结果,我的代码如下:

var vueTable = new Vue({
    el: '#vue-table',
    data: {
        filters: {},
    },
    watch: {
        filters: {
            handler: function () {
                console.log('watched');
            },
            deep: true
        }
    }
}

我在输入上有一个v-model,如下所示:

<input class="form-control" v-model="filters.name">

现在,当页面加载时,它只在控制台中记录一次watched,每当我更改输入时,它不会记录任何内容。

然而,当我把vueTable.filters={name:'某事'};表初始化后,它将在每次更改时触发。

这是意料之外的行为吗?或者我们必须定义我们所有的属性才能被监视?

共有3个答案

杨研
2023-03-14

您可以将<code>过滤器<code>对象初始化置于<code>数据

var vueTable = new Vue({
    el: '#vue-table',
    // If you attach filters at this point in time
    // the watcher will work normally.
    created: function () {
        this.$data.filters = {
            filter_one: null,
            filter_two: null
        };
    },
    data: {
        filters: null,
    },
    watch: {
        filters: {
            handler: function (newValue) {
                // Here you will get the entire filter object 
                // if some property changes.
                console.dir(newValue);
            },
            deep: true
        }
    }
}
章琛
2023-03-14

您可以使用具有此外观的东西

$set(this.filters,'名称', "")

使用$set(如中所述https://v2.vuejs.org/v2/guide/reactivity.html#Change-检测注意事项)将正确添加可观察对象

谭彦
2023-03-14

留档涵盖了这一点。

由于现代JavaScript的局限性(以及Object.observe的放弃),Vue无法检测到属性的添加或删除。

通过从空对象开始并将<code>v-model,您最终会动态添加属性。在这种情况下,最好的方法是初始化数据中的属性。它不必有值。

data: {
    filters: { name: null },
}
 类似资料:
  • 本文向大家介绍802.16物理层,包括了802.16物理层的使用技巧和注意事项,需要的朋友参考一下 IEEE 802.16是一套标准,列出了无线宽带技术的规范。它已商业化为“微波访问全球互操作性(WiMAX)”,负责提供最后一英里无线宽带访问。它为WiMAX制定了物理层和媒体访问控制(MAC)层的标准。 WiMAX的物理层功能 物理层有两种流行的服务- 修复了WiMAX。 移动WiMAX。 WiM

  • 问题内容: 我需要一个从任何参数构建JSON有效字符串的函数,但: 通过不两次添加对象来避免递归问题 通过截断给定深度来避免调用堆栈大小问题 通常,它应该能够处理大对象,但要以截断为代价。 作为参考,此代码失败: 避免递归问题很简单: 但是到目前为止,除了复制和更改Douglas Crockford的代码 以跟踪深度之外,我还没有找到任何方法来避免在诸如或any之类的非常深的对象上发生堆栈溢出。有

  • 深度学习的总体来讲分三层,输入层,隐藏层和输出层。如下图: 但是中间的隐藏层可以是多层,所以叫深度神经网络,中间的隐藏层可以有多种形式,就构成了各种不同的神经网络模型。这部分主要介绍各种常见的神经网络层。在熟悉这些常见的层后,一个神经网络其实就是各种不同层的组合。后边介绍主要基于keras的文档进行组织介绍。

  • 本文向大家介绍EPC Gen 2物理层,包括了EPC Gen 2物理层的使用技巧和注意事项,需要的朋友参考一下 第二代电子产品代码(EPC)的物理层定义了在网络上传输位的方法。EPC是编码在RFID(射频识别)标签上的通用标识符,用于检查库存,资产和人员等对象的身份并进行跟踪。根据EPCglobal标签数据标准的规定,该技术的第二代称为EPC Gen 2。 EPC Gen 2 RFID网络具有两个

  • 物流信息查询 在订单的已发货和已收货状态中,可查看物流信息。

  • 问题内容: Underscore.js具有非常有用的功能。 我正在寻找可以迭代嵌套对象或深层映射的类似功能。经过大量搜索后,我无法真正找到它。我所能找到的是 采摘 深层对象的东西,但没有遍历深层对象的每个值。 像这样: 一个人怎么做? 样本输出 问题答案: 这是使用转换的Lodash解决方案