我想使用JavaScript获得Evernote的提醒。搜索并asking,我到达以下代码:

var token = 'yourToken':
var Evernote = require('evernote');

const nFilter = new Evernote.NoteStore.NoteFilter({
  words: "reminderOrder:*",
  ascending: true,
});

const rSpec = {};
rSpec.includeTitle = true;

var client = new Evernote.Client({token: token, sandbox: false});
var noteStore = client.getNoteStore();

noteStore.findNotesMetadata(nFilter, 0, 50, rSpec, function(notesMetadataList) {
  console.log("Found " + notesMetadataList.notes.length + " notes with `reminderOrder` set.");
  console.log();
  console.log("Here are their titles: ");

  for (var i in notesMetadataList.notes) {
    console.log("\t" + notesMetadataList.notes[i].title);
  }
});


一切顺利,直到最后一部分:noteStore.findNotesMetadata(...。我收到此错误:

(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): #<ThriftException>
(node:1) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.


这是我的第一个nodejs代码,所以我不知道自己在做什么错...

最佳答案

我不确定您使用的是哪个版本的Evernote,但是最新版本使用的是Promise,您应该改用以下函数:

noteStore.findNotesMetadata(nFilter, 0, 50, rSpec).then(function(notesMetadataList) {
    console.log("Found " + notesMetadataList.notes.length + " notes with `reminderOrder` set.");
    console.log();
    console.log("Here are their titles: ");

    for (var i in notesMetadataList.notes) {
      console.log("\t" + notesMetadataList.notes[i].title);
    }
  }).catch(function(err){
      console.log('Error:',err);
  });


您链接的主旨是2年,最有可能使用了回调。

10-06 04:41
查看更多