0
나는 다음과 같은 코드를 가지고redis를 사용하면서 함수를 차례로 실행하는 방법은 무엇입니까?
var arr1 =['1','2','3'];
client.sadd("arr1",arr1);
var arr2=['2','4','6'];
var arr3 =['3','6','9'];
client.sadd("arr2",arr2);
client.sadd("arr3",arr3);
client.sadd("arraylist",'arr1','arr2','arr3');
function getValue(value){
\t client.smembers("arraylist",function(err,data){
\t \t if(err) console.log(err);
\t \t else {
\t \t \t console.log(data);
\t \t data.forEach(function(res){
\t \t \t console.log(res);
\t \t \t client.smembers(res,function(err,data){
\t \t \t \t if(err) console.log(err);
\t \t \t \t else data.forEach(function(val){
\t \t \t \t \t if(val==value){
\t \t \t \t \t \t client.sadd("validarr",res);
\t \t \t \t \t console.log("stored!")
\t \t \t \t \t }
\t \t \t \t })
\t \t \t })
\t \t \t
\t \t
\t \t })
\t \t
\t \t }
\t })
}
function randarr(){
\t client.srandmember("validarr",function(err,response){
\t \t if(err) console.log(err);
\t \t else console.log(response);
\t })
};
promise.resolve(getValue(2)).then(function()
{
\t console.log("hey");
\t promise.resolve(randarr()).then(function(){
\t \t console.log("done")
\t },function(err){console.log("error")})
})
난 다음에 저장된 설정 validarr를 사용하려면 때문에이 기능 getValue의 전체 실행 후 함수 randarr()를 실행하려면 function randarr().
나는 async.series를 사용해 보았습니다. 두 기능이 동시에 실행 중이며 출력을 순서대로 인쇄하고있는 것으로 나타났습니다.
그래서 사용하여 내가 약속을 사용하여 동일한 오류 코드의 출력에 직면하고있다 promise.then : 내가 기능을 실행하는 inorder를 사용해야하는 기능이 order.What에서 실행되지 않아요
hey
done
connected
[ 'arr2','arr3',arr1']
arr2
arr3
arr1
null
stored!
stored!
을 하나씩.
누군가이 코드를 도와 줄 수 있습니까?