2017-05-09 5 views
0

こんにちは私は既に他のモジュール(別のjavascriptファイル)に属する関数を実行することによって解決されたPromiseを取得しようとしています。 。Nodejsは別のモジュールに値を得るために別のモジュールに解決を渡します

これは私のコードです:

saveUrl.jsファイル:

const manager = require('./manager'); 
 

 
.then(()=>{ 
 
return new Promise((resolve, rej)=>{ 
 
\t resolve(mainUrl) 
 

 
     //here if I put .then I have the value that I want BUT I want the value to be passed to the manager file 
 

 
     manager.getSavedUrlPromise() 
 
    }) 
 
})

マナger.jsファイル:

const mongoSavedUrl = require('./saveUrl'); 
 

 

 
module.exports={ 
 
    
 
    getSavedUrlPromise(){ 
 
    return mongoSavedUrl 
 
    .then(()=>{ 
 
     console.log("inside getSavedUrlPromise") 
 
     console.log(promise) 
 
     process.exit() 
 
    }) 
 
    
 
    
 
    
 
    } 
 
    
 

 
}

私に言っています:今、それは完了だ

mongoSavedUrl.then is not a function

+0

'決意(mainUrl)' - この "解決" は明らかにノー約束してそこに何をしているのですか?また、saveUrl.jsにはエクスポートがありません。また、そこには何も返されません –

答えて

0

OK、これは、ワークフローの誤りでした。 saveUrlファイルで

は、それは、次のようになります。

そして、私のマネージャー・ファイル内の約束がすでに処理されているので、私はどんな.thenを配置する必要はありません

.then((res) => { 
 
\t \t resolve(mainUrl); 
 
}); 
 

 
// I handle the resolve here and decided to call the module function afterwards 
 
.then((url) => { 
 
    return manager.getSavedUrlPromise(url) 
 
});
私はそこから値を渡すだろうからsaveUrlファイル:

module.exports={ 
 
    
 
    getSavedUrlPromise(url){ 
 
    
 
     console.log("inside getSavedUrlPromise") 
 
     console.log(url) 
 
     process.exit() 
 
    
 
    
 
    } 
 

 
}

関連する問題