0

我正在尝试使用我通过 GitHub 下载的 sculejs 模块。根据提供的示例,com.scule.js 文件似乎应该与 app.js 放在同一文件夹中。但是最新版本的 Titanium(我认为)没有使用这种结构。

这是我添加到位于 app/controllers 下的 index.js 文件中的内容:

var scule  = require('com.scule.min');

这导致模拟器给我“应用程序错误找不到模块:com.scule.min。”

这是我的应用程序的文件夹系统的样子: 文件夹

有谁知道怎么了?或者也许可以将我推向正确的方向以使其发挥作用?

谢谢

4

3 回答 3

0

对于您的需求来说,这可能有点晚了 - 但我想我还是会在这里给出一个答案,让其他人看到。

看来您正在使用“合金”和钛 - 这很好!我对 Titanium 比较陌生,但我很确定 Alloy 是在 Titanium 中构建应用程序的方式。

在 Alloy 中,您需要将所有 CommonJS 库放在与控制器、视图和样式处于同一级别的“lib”文件夹中。如果该文件夹不存在,请创建该文件夹。

将 com.scule.js(我使用)或 com.scule.min.js 放入“lib”文件夹后,您可以轻松地将其包含在其他模块中(例如,您的控制器或您自己的其他库在 lib 文件夹中)。写吧:

var scule = require('com.scule') // Basically, the file name without the last ".js"

我不知道您的问题是否与“com.scule.min.js”有关?我还没有尝试过 - 但我在我当前的应用程序中使用 'com.scule.js' ;-)

/约翰

于 2014-09-10T12:06:55.000 回答
0

控制器目录中应该只有控制器。所以你应该删除除 index.js 之外的所有内容。

接下来,创建一个 lib 目录并将您的 commonjs 库放在那里。另外,从 app 目录中删除 com.scule.min.js。

在 Alloy中使用正确的目录结构很重要。否则,您的文件将被忽略。

于 2013-08-14T13:30:31.060 回答
0

用这个:

var scule  = require('/controllers/com.scule.min');
于 2013-08-14T13:32:56.187 回答