0
我正在尝试做一个简单的任务。这里是我的函数,我在URL链接作为参数。我阅读链接,将其废弃为标题和标题等数据。那么我只是试图将数据存储在mongo中。 由于某种原因,查看这个代码控制台先打印y然后再打印x。 为什么javascript不编写代码? 任何帮助我如何能够将这些数据存储在全局变量中。 感谢 我相信这是一个回调的错误..变量值未被存储,js是否在编写代码时编写它?
insertNewItem(link){
check(link, String);
var xray = new Xray();
var tname;
xray(link, 'title')(function(err, title) {
tname = title;
console.log('x', tname);
});
var header;
xray(link, 'h1')(function(err, h1) {
header = h1;
});
console.log('y',tname);
Items.insert({
url: link,
name: tname,
bio: header
});
}
由于在回调中记录了'x',执行顺序完全取决于'Xray'对象的实现。这是任何人都可以对这段代码分离出来的唯一有意义的东西。您应该了解回调如何工作以及异步执行的含义。 –
非常感谢你尼尔,使很多感觉..有没有什么方法可以绕过我的设计我可以在这里完成我的最终目标。 bascially将值存储在某个变量中并将其添加到数据库中。也许创建一个外部函数来解析并返回值作为参数.. @NielsKeurentjes – ankibunkers