node.jsで外部ファイル内のファンクションを呼び出し、
処理結果を呼び出し元に戻して、次の処理を行いたいのですが、
処理結果を待たずに次の処理を行ってしまい、
意図する挙動になりません。
具体的な処理の内容は以下の通りですが、
⑤の箇所でつまずいています。
どのように対応したら良いか、お教え頂けないでしょうか。
<処理の流れ>
①main.jsからsub.jsを呼び出し
②sun.js内のファンクションに引数(text)を送り
③sub.js内でtext2へ加工
④加工後、main.jsへ戻し
⑤加工後の結果を待って処理を行う
⇒結果を待たずに次の処理を行ってしまいます。
<処理結果>
以下のようになってしまい、処理結果を待たずに次の処理を行ってしまう。
加工後の確認: 吾輩は猫である ごろにゃん。
結果を確認: undefined
js
1// 呼び出し元:main.js 2// 外部ファイルを読み出し、非同期処理を行う 3var exportsub = require('./sub.js'); 4 5var text = "吾輩は猫である"; 6// console.log(text); 7hogehoge = (exportsub.submodule(text)); 8console.log("結果を確認:", hogehoge);
js
1// 呼び出し先:sub.js 2exports.submodule = function(text) { 3 // console.log("引渡し値の確認:", text); 4 var text2 = (text + " ごろにゃん。"); 5 console.log("加工後の確認:", text2); 6 setTimeout(function() { 7 return text2; 8 }, 1000) 9}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/23 08:58
2017/09/23 08:59