非导出变量已导出

时间:2019-11-03 09:37:28

标签: node.js module electron commonjs

我正在使用带有require()和一些文件的普通commonjs模块通过电子构建应用程序。这些文件相互需求,但是这样做时,一个模块index.js中的未导出变量在另一个menu.js中可用–就像它们在哪里导出一样:

我的设置:

// main.js
mainWindow = new BrowserWindow({
 webPreferences: {
    nodeIntegration: true
  }
}) 
mainWindow.loadFile('index.html') // script includes index.js
// index.js
const fs = require('fs')
const { remote } = require('electron')
const menu = require('./scripts/menu.js')

const leftPane = document.querySelector('#left')  // local variable, not exported
menu.setup()
// menu.js
function setup () {
  console.log(leftPane) // leftPane from index.js is defined! how?
}

exports.setup = setup

变量leftPane是在index.js内部定义的,为什么也要在menu.js中定义呢?可以用nodeIntegration和js吊起东西吗?

0 个答案:

没有答案