kit*_*rry 1 javascript node.js electron
我是 Electron 和 Node 的新手。我似乎无法require()从 Electron 中的另一个本地 .js 文件,我不明白这个问题。我认为我缺少的东西很简单,但我找不到。
这是我的文件结构:
/
package-lock.json
node_modules
main.js
package.json
game/
...
test.js
properties.js
assets/html/
main_window.html
Run Code Online (Sandbox Code Playgroud)
main.js仅加载main_window.html到电子窗口中,其他不多。test.js使用 .html 文件从内部引用<script src="../../game/test.js"></script>。这是test.js:
const properties = require('./properties');
...
Run Code Online (Sandbox Code Playgroud)作为回报,我在开发工具控制台中收到此错误:
Uncaught Error: Cannot find module './properties'
Run Code Online (Sandbox Code Playgroud)当我node test.js在game文件夹中使用命令时,文件被导入,一切正常。但是,当我切换到 Electron 并npm start从 root使用时,我认为我需要本地 .js 文件,方法是在其名称前放置一个点和一个正斜杠。尽管与文件位于同一文件夹中test.js,但它似乎无法找到properties.js.
还有package.json文件,以防万一可能需要:
{
"name": "economy-board-game-electron",
"version": "1.0.0",
"description": "Recreation of that board game for educational purposes.",
"main": "main.js",
"scripts": {
"start": "electron ."
},
"author": "Edvin Boul",
"license": "MIT",
"dependencies": {
"electron": "^4.0.1"
}
}
Run Code Online (Sandbox Code Playgroud)
该路径可能是相对于 html 文件的,请尝试执行 ../../game/properties,如果可行,请考虑将您的主 html 入口点与您的游戏目录放在同一级别 –
Electron 不需要以任何特殊方式构建文件,但在组织上以这种方式进行推理可能更简单,因此您不必编写长的回溯路径。
这也是他们大多数示例的完成方式,他们尝试制作它,以便您几乎可以保留典型的网站结构。