是否可以将main.js文件中的函数从web调用到电子?

时间:2016-09-14 20:41:28

标签: javascript node.js electron

所以我在主文件main.js中有一个函数,它创建了Electron BrowserWindow。让我们说:

function HelloWorld(name){
    return 'Hello World! said ' + name;
}

我可以在Electron加载的html页面中调用吗?

<html>
    <head>
        <script type="text/javascript">
            const hello = require('electron').HelloWorld
        </script>
    </head>
    <body onLoad="alert(hello);">
    </body>
</html>

我能这样做吗?

1 个答案:

答案 0 :(得分:5)

是的,你可以。

在您的主要流程(可能是main.js)中,将此行放在主流程中:

lm(y ~ t + I(t^2), data=df)
lm(y ~ splines::ns(t, knots = c(0), Boundary.knots = c(-3, 3)), data=df)

并在您的HTML中:

global.HelloWorld = function(name){
    return 'Hello World! said ' + name;
}

但我建议使用<html> <head> <script type="text/javascript"> let {remote} = require('electron'); const hello = remote.getGlobal("HelloWorld")(); // <-- () this is important </script> </head> <body onLoad="alert(hello);"> </body> </html> ipcMain在流程之间发送数据。