Javascript 如何返回SweetAlert2输入的值?
这是我目前的代码 函数getInput(){ 喷火({ 输入:“文本”, })。然后((结果)=>{ 如果(结果){ 返回值(result.value); }); } 函数main(){ 如果(条件){ const test=getInput(); }否则{ //做点别的 } } 我知道这是不正确的,因为它返回未定义的值。我试图寻找一系列解决方案,但我总是得到未定义的值或承诺本身返回的值,不知道我应该如何获得值 我想做的是以某种方式返回SweetAlert2输入的值,以便在其他函数中使用它 编辑 我想我基本上得到了我想做的事情。我没有把Javascript 如何返回SweetAlert2输入的值?,javascript,sweetalert2,Javascript,Sweetalert2,这是我目前的代码 函数getInput(){ 喷火({ 输入:“文本”, })。然后((结果)=>{ 如果(结果){ 返回值(result.value); }); } 函数main(){ 如果(条件){ const test=getInput(); }否则{ //做点别的 } } 我知道这是不正确的,因为它返回未定义的值。我试图寻找一系列解决方案,但我总是得到未定义的值或承诺本身返回的值,不知道我应该如何获得值 我想做的是以某种方式返回SweetAlert2输入的值,以便在其他函数中使用它 编
然后处理程序放在getInput()
中,而是把它放在test
中,这样我就可以把剩下的代码放在处理程序中
函数getInput(){
回注水沟火({
输入:“文本”,
})
}
函数main(){
如果(条件){
const test=getInput();
测试。然后((结果)=>{
如果(结果){
//做事
}
});
}否则{
//做点别的
}
}
当您的程序无法确定返回值的时间时,使用a的理想用例
在then
处理程序中,将调用回调函数,input
将作为参数传递
函数getInput(cb){
喷火({
输入:“文本”,
})。然后((结果)=>{
如果(结果){
返回cb(结果值);
});
}
}
主功能(输入){
控制台日志(输入);
}
getInput(main)
我明白了,我可能可以用我的代码来处理这个问题,但这并不是很理想,因为我的main()
函数有一个if条件来控制是否使用SweetAlert2。使用回调将要求我将条件放在外部,这基本上消除了main()的用途
function。我编辑了我的代码示例来演示我的意思。你是说main
和getInput
是独立的函数吗?@cosmosi如果是这样,我会将input
的值存储在全局变量中,其余代码将基于global
变量。