【发布时间】:2018-01-26 16:47:05
【问题描述】:
我目前正在开发一个基于电子的应用程序,并且我有一个类可以在“imports.js”文件中扩展电子的 BrowserWindow,如下所示:
const
electron = require('electron')
app = electron.app
BrowserWindow = electron.BrowserWindow
BrowserView = electron.BrowserView
module.exports.impor = class impor extends BrowserWindow {
constructor (){
super()
}
// some stuff here
}
我想使用 mocha 对其进行测试,所以我有一个如下所示的测试文件:
const impor = require('./imports').impor
// tests go there
但是当我使用 mocha ( cmd: "mocha test.js") 运行测试时,我得到了这个错误:
module.exports.impor = class impor extends BrowserWindow {
^
TypeError: Class extends value undefined is not a constructor or null
at Object.<anonymous> (/media/athoir/Storage/OrganiKnowledge/test/imports.js:2:44)
at Module._compile (module.js:660:30)
at Object.Module._extensions..js (module.js:671:10)
at Module.load (module.js:573:32)
at tryModuleLoad (module.js:513:12)
at Function.Module._load (module.js:505:3)
at Module.require (module.js:604:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/media/athoir/Storage/OrganiKnowledge/test/test_import.js:7:15)
at Module._compile (module.js:660:30)
at Object.Module._extensions..js (module.js:671:10)
at Module.load (module.js:573:32)
at tryModuleLoad (module.js:513:12)
at Function.Module._load (module.js:505:3)
at Module.require (module.js:604:17)
at require (internal/module.js:11:18)
at /usr/lib/node_modules/mocha/lib/mocha.js:231:27
at Array.forEach (<anonymous>)
at Mocha.loadFiles (/usr/lib/node_modules/mocha/lib/mocha.js:228:14)
at Mocha.run (/usr/lib/node_modules/mocha/lib/mocha.js:536:10)
at Object.<anonymous> (/usr/lib/node_modules/mocha/bin/_mocha:573:18)
at Module._compile (module.js:660:30)
at Object.Module._extensions..js (module.js:671:10)
at Module.load (module.js:573:32)
at tryModuleLoad (module.js:513:12)
at Function.Module._load (module.js:505:3)
at Function.Module.runMain (module.js:701:10)
at startup (bootstrap_node.js:193:16)
at bootstrap_node.js:617:3
我已经尝试在上课前的测试中导入电子,但它没有改变任何东西,我不知道在这种情况下如何进行循环导入。 此外,当我尝试将它导入我的 main.js 文件时,它工作得很好。
我可能忽略了一些明显的东西,但我在这里迷路了。
【问题讨论】:
-
经过进一步调查,这似乎是 Mocha 和 Electron 特有的问题
标签: javascript mocha.js electron extends