我对 Angular 数组/对象上$$hashkey的属性感兴趣。

  • 每次重新加载一个时,每个生成的哈希键都相同吗?
    页;快速测试告诉我是的,但是我有点认为
    不会吗
  • 如果您更新/添加到现有数组,旧的hashkey的
    保持一致?
  • 如果以上是正确的,是否有一种方法可以使用
    哈希键? -当然,我可以自己动手,但是在我重新制造方向盘之前,我想问一下。

  • 例:

    意见包括:
  • 表单数据(示例有1个表单)
  • 元素数据(示例包含2个元素)
  • 元素选项数据(示例每个元素有2个选项)

  • 提取方法:
    angular.get($$hashkey);
    

    然后,您将传递该元素的哈希键,它将返回对整个数组内该数组的引用。

    最后,数据将是:
    {
        form_id: 1
        form_desc: 'xxx',
        form_name: 'name 1',
        Elements: [
            {
                element_id: 1,
                element_name: 'element1',
                default_value: null,
                disabled: "0",
                element_type: "image",
                ElementOptions: [
                    {
                        show: false,
                        sort_order: 0,
                        value: "ar",
                    },
                    {
                        show: true,
                        sort_order: 1,
                        value: "rw",
                    }
                ],
            },
            {
                element_id: 2,
                element_name: 'element2',
                default_value: null,
                disabled: "0",
                element_type: "image",
                ElementOptions: [
                    {
                        show: false,
                        sort_order: 0,
                        value: "ar",
                    },
                    {
                        show: true,
                        sort_order: 1,
                        value: "rw",
                    }
                ],
            }
        ]
    }
    

    最佳答案

    $$ hashkeys将仅针对函数和对象进行计算,因此,如果您希望跟踪不属于这些类型之一的任何内容,则将受到限制。

    $$ Hashkeys看起来像...
    (功能||对象):N
    ...

    其中N只是一个增量值,对于每个计算的$$ HashKey,该值将被调整+ 1。
    因此,在许多情况下,跨页面加载的值可能相同。但是,在页面初始化过程中查询多个数据源时,加载急速加载的数据会导致差异,并且无法保证返回顺序。在这种情况下,您将必须整理所有异步数据,然后以特定顺序将该数据分配到您的范围,以确保一致的$$哈希键。

    在链接到我们的DOM的数组中移动项目(通过ng-repeat)不会更改该项目$$ hashkey。删除并重新添加它。

    我不会使用$$ Hashkey来做自己的内务处理,因为它打算在AngularJS内部使用。

    关于javascript - AngularJS:$$ hashkey是可靠的 key 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26381247/

    10-12 13:03