【发布时间】:2017-04-30 10:59:36
【问题描述】:
我正在尝试使用 Electron 应用程序,并且在尝试从 Chromium 浏览器窗口中运行的另一个脚本中要求模块时遇到问题。无论我如何指定相对路径,我总是遇到关于无法找到模块的相同错误。
我的项目是这样设置的:
index.html
scripts
controllers
controller.js
models
game.js
tests
spec
gameSpec.js
我的 index.html 是 electron 启动时默认打开的页面,将 controller.js 作为普通脚本加载到 body 标签的末尾。
<script src="scripts/controllers/controller.js"></script>
controller.js 顶部有以下代码:
var Game = require("../models/game.js");
.... some other code .....
var game = new Game();
在启动电子 Chromium 窗口时,我立即遇到了这个问题:
Uncaught Error: Cannot find module '../models/game.js'
我的假设是我需要一个从 controller.js 文件到它正在导入的 game.js 文件的相对路径,但无论我进行何种调整,我总是会遇到该错误。我不认为这仅仅是一个语法错误,因为我在测试文件夹下的规范都在运行并通过,它成功地使用了这样的要求:
var Game = require("../../models/game.js");
describe("Game", function () { ... });
我是否对从 Chromium 浏览器执行时需要相对路径的方式做出了错误的假设?任何帮助表示赞赏!
【问题讨论】:
标签: javascript node.js module electron requires