Electron如何使用main.js文件中没有的方法

时间:2019-07-29 18:34:18

标签: electron

我有一个看起来像这样的电子项目:

index.html
main.js
edit.js
package.json
etc...

在edit.js中,我有一个功能:

myfunction() {
    // do something
}

在main.js中,我有一个菜单,然后从该菜单中使用正在编辑的功能...

赞:

{
label:'MenuItem1',
click() {
  myfunction(); // This function is not here in main.js but in edit.js
 }
},

我该怎么做?

1 个答案:

答案 0 :(得分:1)

导出要在main.js中使用的函数并需要edit.js文件:

edit.js

module.exports = {
    myfunction: function () {
        // do something here...
    }
};

exports.myfunction = function() {
    // do something here...
}

main.js

const { MenuItem } = require('electron');
const { myfunction } = require(__dirname + '/edit.js');

// Now myfunction is accessible in main.js
// ...

const menuItem = new MenuItem({
    label: 'MenuItem1',
    click: function() {
        myfunction();
    },
    // ...
});

// OR

const menuItem2 = new MenuItem({
    label: 'MenuItem2',
    click: myfunction,
    // ...
});