我有一个.npmrc文件,其中:

runtime = electron
target = 1.7.9
target_arch = x64
disturl = https://atom.io/download/atom-shell
build_from_source = true

并带有以下内容的package.json文件:
"scripts": {
    "start": "electron .",
    "test": "mocha"
}

遵循npm install之后,当我使用npm start运行node.js脚本时,一切都会按预期进行。但是,当我使用npm test时,我遇到了一个错误:
Uncaught LevelUPError: Failed to require LevelDOWN (The module '/Users/_me_/_project_/node_modules/leveldown/build/Release/leveldown.node'was compiled against a different Node.js version usingNODE_MODULE_VERSION 54. This version of Node.js requiresNODE_MODULE_VERSION 57. Please try re-compiling or re-installingthe module (for instance, using 'npm rebuild' or 'npm install').). Try 'npm install leveldown' if it's missing
我的test.js文件使用一小部分不需要 Electron 的模块。

我尝试在清除npm rebuild目录之后运行npm installnpm install leveldownnpm_modules,但是错误仍然存​​在。

知道为什么我会看到这些错误或如何解决此问题吗?

编辑:我能够用 Electron Mocha 切换 Mocha 并绕过错误。

最佳答案

  • npm缓存清理
  • npm安装
  • electronic-rebuild(需要npm install electronic-rebuild)

  • 我用这些方法来解决问题

    关于node.js - LevelDOWN : NODE_MODULE_VERSION error when testing,但未运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46918826/

    10-16 21:25