首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从GunDb节点获取密钥

如何从GunDb节点获取密钥
EN

Stack Overflow用户
提问于 2017-01-15 20:32:12
回答 1查看 822关注 0票数 4

我已经开始使用GunDB了,我真的很喜欢它。我可以轻松地创建复杂的关系,而不会遇到很多与关系数据库或文档数据库相关的问题。

不幸的是,我遇到了一个看似简单的问题。

我已经成功地创建了节点,但稍后想要获取键,以便可以将它们嵌入到页面上。例如,在一个页面上,我使用表单添加用户。然后,在另一个页面上,我希望获得用户列表并创建一个select输入,该输入将用户的姓名作为文本,键作为值。

例如,在第一页上我有这样的东西-

代码语言:javascript
复制
var user1 = gun.get('user/1').put({name: user1});
var user1 = gun.get('user/2').put({name: user2});
var users = gun.get('users');
users.set(user1);
users.set(user2);

在另一页上,我有这样的东西-

代码语言:javascript
复制
var users = gun.get('users');

users.map().val(function(user) {
  var userOption = document.createElement("option");
  userOption.text = user.name;
  userOption.value = user.key; // for example, though this does not work
  userSelect.appendChild(userOption);
  
});

稍后,我想在如下内容中使用选项值-

代码语言:javascript
复制
var user = gun.get(selectedUserOption.value);

不幸的是,我想不出怎么弄到钥匙。它似乎在节点对象中保存为"#",但我不能确定如何访问此值。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-16 04:08:58

问得好!大多数回调函数的第二个参数都包含您要获取的数据的字段或关键字。从您的示例中可以看出:

代码语言:javascript
复制
users.map().val(function(user, ID) {
  var userOption = document.createElement("option");
  userOption.text = user.name;
  userOption.value = ID; // for example, this now should work
  userSelect.appendChild(userOption);
});

现在,您可以执行users.path(selectedUserOption.value)来获取相同的用户引用/链上下文!

我很高兴听到你喜欢使用gun :)我很想看看你的项目的演示!分享思想?

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41661114

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档