AngularJS:$$hashkey是一个可靠的密钥吗
AngularJS: is $$hashkey a reliable key
问题
我对$$hashkey
在角度阵列/对象上的性质感兴趣。
- 每次重新加载页快速测试告诉我是的,但我有点想当然不会吧
- 如果您更新/添加到现有数组,那么旧的hashkey保持一致
- 如果上述情况成立,是否有一种方法可以使用hashkey?-当然,我可以自己滚动,但在我重新制作轮子之前,我想我应该问一下
示例:
视图包括:
- 表单数据(示例有1个表单)
- 元素数据(示例有2个元素)
- 元素选项数据(示例中每个元素有2个选项)
提取方法:
angular.get($$hashkey);
然后,您将传递元素的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看起来像。。。(函数||对象):N…
其中,N只是一个增量值,对于每计算一个$$HashKey调整+1。因此,在许多情况下,页面加载之间的值可能相同。但是,当作为页面初始化的一部分查询多个数据源并且无法保证返回顺序时,异步加载数据会导致差异。在这种情况下,您必须整理所有异步数据,然后按特定顺序将这些数据分配给您的作用域,以确保$$哈希键一致。
在链接到DOM的数组中移动项目(通过ng repeat)不会改变项目$$hashkey。删除并重新添加会。
我不会将$$Hashkey用于我自己的内务管理,因为它是AngularJS内部的。
当我没有标识符时,我使用了这个内部私有属性。我认为,它很实用,但不推荐使用。
相关文章:
- API密钥使用和检查示例
- react.js中的密钥绑定
- JS对象密钥序列
- 似乎无法使用javascript从AWS 3S中删除密钥
- 加载两个具有相同父密钥名称的json文件
- 如何获取$data.Entity的密钥
- Angular ngRepeat:重复错误(尽管没有重复的密钥)
- CryptoJS和密钥/IV长度
- 我如何判断一个符号是否被用作密钥
- 抛出“你必须提供一个 appId 和主密钥!”;
- 如果删除了 localStorage 密钥,请将所有下一个密钥移动 1 位
- AngularJS:$$hashkey是一个可靠的密钥吗
- 为什么给了一个不正确的密钥,我的解密最终失败了
- CryptoJS如何每次生成一个密钥
- 如何在javascript中创建一个具有非法密钥名称的对象
- 获取下一个密钥
- AWS-其中一个必需的密钥没有给定值
- 如何返回仅包含一个特定密钥对的多个集合
- Ng-options带有一个密钥对对象数组
- 我如何从json打印密钥在我的网页上一个接一个