【问题标题】:store data in variable arangojs将数据存储在变量 arangojs 中
【发布时间】:2016-05-02 16:41:43
【问题描述】:

在处理 node.js 时,我有一个名为 IoTCollection 的集合,其中包含一个文档

{id: 1, 传感器:12 }

我需要将返回的数据存储到一个变量中

var my data = db.query('FOR sensor in IoTCollection return sensor.sensorType');

但它返回一个未决的承诺

我该怎么办?

提前谢谢你

【问题讨论】:

  • 答案对您有用吗?如果是,您可以将其标记为“已接受”吗?如果没有,缺少什么?

标签: arangodb arangojs


【解决方案1】:

你的问题到底是什么?

arangojs 中的所有异步方法都会返回 Promise。这些承诺最终将解析为服务器响应(或者在查询的情况下:具有更多异步方法的游标对象)。如果出现错误,应使用指示问题的特定错误对象拒绝承诺。

如果承诺根本没有被解决或拒绝,那很可能是一个错误。

如果您不熟悉 Promise,我建议您先阅读 a tutorial like David Walsh's。 Promise 表示函数返回时未知的函数结果(或错误)(但最终会被知道)。 Promise 是 JavaScript 去年引入的一种新语言特性,所以我建议你习惯它们。

如果您想知道为什么 arangojs 具有异步方法而不是完全同步的方法(如 ArangoDB 的内部 JavaScript 函数):Node.js(和浏览器)中的所有网络访问都是异步的,因此 arangojs 无法提供同步 API在底层异步 API 之上。要详细了解为什么 ArangoDB 是同步的,而 Node 是异步的,我建议查看the ArangoDB Foxx webinar

【讨论】:

  • 感谢您的启发!我明白了
  • @Slyfer 如果这回答了这个问题,您能否将我的回答标记为已接受,这样这个问题就不再显示为未回答?否则,你能告诉我缺少什么或者我还能做些什么来帮助你吗?
猜你喜欢
  • 1970-01-01
  • 2018-02-08
  • 1970-01-01
  • 1970-01-01
  • 2013-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多