首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么电子中没有定义crashReporter?

为什么电子中没有定义crashReporter?
EN

Stack Overflow用户
提问于 2017-06-29 05:55:17
回答 1查看 321关注 0票数 0

我最近升级到了电子版本1.6.11,现在当我运行我的npm start命令时,我得到以下错误:

我的main.js文件的顶部如下所示:

代码语言:javascript
复制
const {app, BrowserWindow, ipcMain, crashReporter} = require('electron');
const path = require('path');

crashReporter.start({
    productName: 'MyCo',
    companyName: 'MyCo, Inc.',
    submitURL: 'https://myco.co/fake-url-to-submit',
    uploadToServer: true
});

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

下面是我的package.json文件的内容:

代码语言:javascript
复制
{
  "name": "MyApp",
  "productName": "MyApp",
  "version": "0.0.1",
  "main": "main.js",
  "repository": "https://github.com/zackshapiro/myApp",
  "devDependencies": {
    "babel-core": "^6.7.2",
    "babel-eslint": "^7.1.1",
    "babel-loader": "^6.2.4",
    "babel-preset-es2015": "^6.3.13",
    "babel-preset-react": "^6.3.13",
    "babel-preset-stage-3": "^6.17.0",
    "css-loader": "^0.23.1",
    "electron": "^1.6.11",
    "electron-packager": "^8.7.1",
    "electron-rebuild": "^1.1.3",
    "eslint": "^3.13.1",
    "eslint-loader": "^1.6.1",
    "eslint-plugin-react": "^6.9.0",
    "file-loader": "^0.10.1",
    "node-libs-browser": "^1.0.0",
    "node-sass": "^4.2.0",
    "sass-loader": "^4.1.1",
    "style-loader": "^0.13.0",
    "webpack": "^2.6.1",
    "webpack-dev-server": "^2.4.4"
  },
  "scripts": {
    "start": "./node_modules/electron-prebuilt/dist/Electron.app/Contents/MacOS/Electron .",
    "watch": "./node_modules/.bin/webpack-dev-server",
    "electron-rebuild": "./node_modules/.bin/electron-rebuild"
  },
  "dependencies": {
    "babel-polyfill": "^6.22.0",
    "electron-context-menu": "^0.8.0",
    "electron-prebuilt": "^0.37.2",
    "gl-react": "^2.2.9",
    "gl-react-hue-rotate": "^1.1.0",
    "isomorphic-fetch": "^2.2.1",
    "rc-slider": "^6.1.0",
    "react": "15.4.2",
    "react-dnd": "^2.2.4",
    "react-dnd-html5-backend": "^2.2.4",
    "react-dom": "15.4.2",
    "react-redux": "^5.0.2",
    "react-router": "^4.1.1",
    "react-router-dom": "^4.1.1",
    "react-router-redux": "^5.0.0-alpha.6",
    "redux": "^3.6.0",
    "redux-saga": "^0.14.3",
    "tinycolor2": "^1.4.1"
  }
}

我如何修复这个问题并让crashReporter正常工作?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-29 06:18:55

您的start脚本是错误的--您正在尝试使用过时的electron-prebuilt,但是您可能忘记了从您的计算机上卸载它,所以它仍然有效。它目前在您的devDependencies中,但已被弃用,自2016年起就不再受支持。使用以下命令将其删除:

代码语言:javascript
复制
npm uninstall --save-dev electron-prebuilt

crashReporter没有附带electron-prebuilt,因此当您尝试导入它时,它是未定义的。

您应该使用随crashReporter一起安装的最新electron。要执行此操作,请将脚本更改为(如果已在本地安装):

代码语言:javascript
复制
"start": "./node_modules/.bin/electron ."

这将使用electron而不是electron-prebuilt,应该可以很好地工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44813162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档