电子:未捕获错误:找不到模块

时间:2018-05-24 00:39:26

标签: javascript node.js electron

我正在构建我的第一个电子桌面应用,当我在一个中使用require()时,我找不到"找不到模块" 错误文件导入另一个。 这两个文件都在同一个文件夹中,并且没有拼写错误。

这是主文件index.js

const app = require('electron')
const store = require('./datacontainer') //Here I import the other file

if(store.users.length==0) { // throws exception: store is not defined
    ...
}

及以下是导入的文件datacontainer.js

var exp = module.exports = {};

exp.users = [{user1},{user2},...];

...

但是,当我运行应用程序并查看控制台时,它会抛出以下内容;

Uncaught Error: Cannot find module './datacontainer'
    at Module._resolveFilename (module.js:543)
    at Function.Module._resolveFilename (C:\mm_apps\report-viewer\node_modules\electron\dist\resources\electron.asar\common\reset-search-paths.js:35)
    at Function.Module._load (module.js:473)
    at Module.require (module.js:586)
    at require (internal/module.js:11)
    at index.js:10

我做错了什么或错过了什么?

更新

在使用index.html的{​​{1}}中,如果我像以下一样引用脚本,则错误消失

index.js

但以这种方式引用时会抛出错误

<script>
   require('./scripts/index')
</script>
是什么给了什么?

1 个答案:

答案 0 :(得分:0)

这样做的时候

<script src="./scripts/index.js"></script>

它在服务器上查找文件。

类似的东西:

https://www.example.com/your-web-folder/scripts/index.js

使用Node.js的require可以根据项目的文件夹结构来解决它。