Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将Python函数返回到Chrome控制台_Javascript_Python_Html_Eel - Fatal编程技术网

Javascript 将Python函数返回到Chrome控制台

Javascript 将Python函数返回到Chrome控制台,javascript,python,html,eel,Javascript,Python,Html,Eel,我试图使用Python中的eel将一个函数从Python返回到google chrome控制台 这是我的当前代码: Python import eel eel.init('web') print("Start") @eel.expose def my_python_function(a, b): print(a, b) eel.start('index.html') HTML <!DOCTYPE html> <html lang="en" dir="l

我试图使用Python中的eel将一个函数从Python返回到google chrome控制台

这是我的当前代码:

Python

import eel

eel.init('web')


print("Start")



@eel.expose
def my_python_function(a, b):
    print(a, b)


eel.start('index.html')
HTML

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Tutorial</title>


    <script type="text/javascript" src="/eel.js"></script>
    <script>
      console.log('Calling Python...');
      eel.my_python_function(1, 2);

    </script>




  </head>
  <body>
<p>test</p>
  </body>
</html>
这是我的尝试2

<script type="text/javascript" src="/eel.js"></script>
<script>
  console.log('Calling Python...');
  a = eel.my_python_function(1, 2);
  console.log(a());

</script>

log('callingpython…');
a=eel.my_python_函数(1,2);
log(a());
已调整控制台。日志(a);到console.log(a())

输出为
promise

实际输出应为
12

在Javascript中,语言不允许我们在等待时阻塞 对于回调,除非在异步函数中使用wait。 因此,Javascript方面的等效代码是:

//在标记为'async'的函数中,我们可以使用'await'关键字。
异步函数run(){
//第一个调用返回函数,第二个调用实际执行它
设a=wait eel.my_python_function()(1,2);
//必须在call前面加上'await',否则语法相同
log(“从Python获得:+a);
}

run()您的python函数不会返回任何尝试使用的内容

Python:

@eel.expose
def my_python_function(a, b):
    return a+ b
Js:


我也遇到了同样的问题,这是我找到的唯一解决方案,它在这里返回我这个错误代码:`return_val=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
<script type="text/javascript" src="/eel.js"></script>
<script>
  console.log('Calling Python...');
  a = eel.my_python_function(1, 2);
  console.log(a());

</script>
@eel.expose
def my_python_function(a, b):
    return a+ b
console.log('Calling Python...');
eel.my_python_function(1, 2)().then((r) => {
    console.log(r);
});