2017-02-05 3 views
0

메신저가 에서 특정 Json 데이터를 반환하려고 시도합니다. pouchdb 데이터가 존재하면 해당 데이터를 일부 표시하고 싶습니다. 그러나 어쨌든 그렇게 할 수는 없습니다. 내 코드pouchdb에서 json 데이터를 가져 오는 방법

var PouchDB = require('PouchDB'); 
//Creating the database object 
var db = new PouchDB('my_database'); 
//Reading the contents of a Document 
var res = db.get('001', function(err, doc) 
    if (err) 
{ 
return console.log(err); 
} 
else 
{ 
var data = JSON.stringify(res) 
return console.log(doc); 
} }); 

내가 얻는 결과는 : 당신이 콜백과 약속 PouchDB를 사용하고 있는지 {} emptyset

답변

0

귀하의 예제에서 문제 것은. 콜백이나 약속을 사용해야합니다. 여기에 사용해야하는 스 니펫이 있습니다. 나는 콜백과 약속으로 모범을 보였다.

약속은 사용자가 볼 수있는 것처럼 작업 흐름을보다 명확하게 만듭니다.

또한이 예제는 보안상의 이유로 StackOverflow에서 직접 실행되지 않습니다. http://jsbin.com/javipoguqe/1/edit?js,console

//Creating the database object 
 
var db = new PouchDB('my_database'); 
 

 
//Callback example 
 

 
db.get('001', function(err, doc) { 
 
    if (err) { 
 
    return console.log(err); 
 
    } else { 
 
    var data = JSON.stringify(res) 
 
    return console.log(doc); 
 
    } 
 
}); 
 

 
//Promise example 
 

 
var promise = db.get('001'); 
 
promise.then(function(res) { 
 
    console.log(JSON.stringify(res)); 
 
}).catch(function(err) { 
 
    console.log(JSON.stringify(err)); 
 
}); 
 

 

 
//Example to show advantages of promises 
 

 
db.put({ 
 
    '_id': "001", 
 
    name: "newdoc" 
 
}).then(function(res) { 
 
    return db.get('001'); 
 
}).then(function(res) { 
 
    console.log("Document was added and retrieved"); 
 
}).catch(function(err) { 
 
    console.log(JSON.stringify(err)); 
 
});
<script src="https://cdn.jsdelivr.net/pouchdb/latest/pouchdb.min.js"></script>

: 여기에 외부 작업 예제
관련 문제