所以我試圖得到雙因素身份驗證與我正在使用的第一個適當的NodeJS項目,學習和習慣節點。NodeJS存儲模塊功能結果
我有回報這個功能從data_url
正確的價值觀但是當我把它放在一個變量,並返回data_url
它回來爲「未定義」
什麼工作:
QRCode.toDataURL(user.tempSecret.otpauth_url, function (err, data_url) {
console.log(data_url);
});
什麼沒有按」 t工作:
let thisQR = QRCode.toDataURL(user.tempSecret.otpauth_url, function (err, data_url) {
return data_url;
});
console.log(thisQR);
我需要能夠將其存儲在一個變量,所以我可以將它傳遞到我的渲染功能,並通過它直到模板。
任何幫助&指導將不勝感激。
非常感謝答覆和說明/鏈接。 據我瞭解,我需要做一個回調函數來獲得結果,當它準備好了嗎? 我可以做'thisFunction(thisCallback);'通常,但事實上它是一個模塊的函數(QRCode.toDataURL)使用裏面的函數混淆了我。 –
我已經更新了我的答案,希望能夠解決您的評論。 – jonode
上面編輯的代碼片段的工作達到了他們打印完全控制的程度,儘管它第一次註銷時它是'未定義',這可能是我實際嘗試實現的問題? 我想返回的結果將保存在以下對象,因此它可以在我的模板打印出來EJS文件 'res.render(「twoFactor」,{ 標題:「twoFactor」, 形象:codeToGetURL });' 你如何將異步函數中的返回數據傳遞給JavaScript對象,而不傳遞它首先給出的'undefined'值? –