【发布时间】:2020-09-28 06:14:38
【问题描述】:
我正在关注this tutorial 进行电子演示。
只是想知道 require 代码行中发生了什么。
./menu/mainmenu.js 定义菜单项。
const {Menu} = require('electron')
const electron = require('electron')
const app = electron.app
const template = [
{
label: 'Edit',
submenu: [
{
role: 'undo'
},
{
role: 'redo'
},
{
type: 'separator'
},
{
role: 'cut'
},
{
role: 'copy'
},
{
role: 'paste'
},
{
role: 'pasteandmatchstyle'
},
{
role: 'delete'
},
{
role: 'selectall'
}
]
}
]
const menu = Menu.buildFromTemplate(template)
Menu.setApplicationMenu(menu)
main.js
const { app, BrowserWindow, ipcMain } = require('electron');
let win;
function createWindow () {
win = new BrowserWindow({
width: 880,
height: 660,
webPreferences: {
nodeIntegration: true
}
})
// and load the index.html of the app.
win.loadFile('index.html')
require('./menu/mainmenu') //does this line copied the whole mainmenu.js file?
}
require('./menu/mainmenu') 是否将整个文件复制到main.js?
或者导入一些模块? mainmenu.js文件中没有export关键字。
“require 的基本功能是读取一个 JavaScript 文件,执行该文件,然后继续返回导出对象。”
【问题讨论】:
-
require 这里不复制文件(不像
c++#include) -
解释一下,要求应该执行该文件(恕我直言永远不应该依赖)
-
@appleapple 有什么建议为什么不应该依赖该方法?
标签: javascript node.js electron commonjs