【问题标题】:prompt using dialogs return undefined使用对话框提示返回未定义
【发布时间】:2020-01-07 21:58:53
【问题描述】:

在我的电子应用程序中,我使用dialogs npm 包来做提示。我做了一个快速更换的基本功能:

function prompt(text){
    let returnval
    dialogs.prompt(text , val => {
        returnval = val
    })
    return returnval
}

然后我测试了这个功能:

let pro = prompt("Your name");
console.log(pro); //returns undefined

但在控制台中,即使提示完成后它也会返回 undefined。请帮助我。感谢您的回答。

【问题讨论】:

    标签: javascript html node.js electron


    【解决方案1】:

    根据描述 dialog.prompt 是非阻塞函数,所以你传入的函数

    val => { returnval = val}
    

    仅当函数提示已返回其值时才有效

    所以最好兑现承诺

    function prompt(text){
        return new Promise((resolve, reject) => {
          dialogs.prompt(text , val => {resolve(val)})
        })
    }
    

    那么你可以这样使用它

    prompt("Hi, there").then(answer => console.log(answer))
    

    【讨论】:

    • @ObnoxiousNerd 好的
    • 你好??你在吗??
    • 不,我不在那里,我在这里,我编辑了一个答案
    • 在这里等一下,我会很快尝试的
    • 如果我必须向用户返回值怎么办?我该怎么办
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多