require(“electron”)。app未定义。我npm安装了新模块。不确定该怎么做

时间:2016-11-17 20:00:59

标签: node.js npm electron

昨天,我对Electron的开发非常精细。然后我跳到我的电脑上,意识到Electron现在根本不工作。

我删除了node_modules并做了一个新的npm install

的package.json:

...
"devDependencies": {
    "devtron": "^1.4.0",
    "electron": "^1.4.7"
  },
"dependencies": {
    "electron-debug": "^1.1.0"
  }
...

这是我得到的error

我遵循了此问题的先前问题所使用的建议。没有什么能解决它。

未在全球范围内安装电子设备。一切都应该自包含在目录中。

npm list

此代码大部分来自electron boilerplate

编辑:

主要流程:

'use strict';

const path = require('path');
const electron = require('electron');
const app = electron.app;

// adds debug features like hotkeys for triggering dev tools and reload
require('electron-debug')({
    showDevTools: true
});

// prevent window being garbage collected
let mainWindow;

function onClosed() {
    // dereference the window
    // for multiple windows store them in an array
    mainWindow = null;
}

function createMainWindow() {
    const display = electron.screen.getPrimaryDisplay();

    const win = new electron.BrowserWindow({
        width: display.workArea.width,
        height: display.workArea.height
    });

    const projectPath = path.dirname(path.dirname(__dirname));

    win.loadURL(`file://${projectPath}/static/index.html`);
    win.on('closed', onClosed);

    return win;
}

app.on('window-all-closed', () => {
    if (process.platform !== 'darwin') {
        app.quit();
    }
});

app.on('activate', () => {
    if (!mainWindow) {
        mainWindow = createMainWindow();
    }
});

app.on('ready', () => {
    mainWindow = createMainWindow();
});

1 个答案:

答案 0 :(得分:14)

所以,就我而言。通过使用我的原始终端而不是Atom的插件终端来解决问题。

对那里的任何人。请仔细检查您的香草终端甚至编辑,以便仔细检查。