我正在使用Atom和Titanium SDK 6.0.1.GA,Alloy 1.9.8并定位到Android API 22,我在Resources文件夹中创建了一个CommonJS模块但是当我尝试运行我的应用程序时出现以下错误:
在ti:/module.js:303,2
消息:未捕获错误:找不到请求的模块:contactClient
来源:抛出新错误(“未找到请求的模块:”+请求);
V8Exception:ti发生异常:/module.js:303:未捕获错误:找不到请求的模块:contactClient
模块内的代码是:
function getClient(path, successCallback, errorCallback){
var client = Ti.Network.createHTTPClient({
onload : successCallback,
onerror : errorCallback
});
client.open('GET', 'http://10.0.12.138:8284/' + path);
client.send();
}
function getContacts(successCallback, errorCallback){
getClient('contacts', successCallback, errorCallback);
}
exports.getContacts = getContacts;
我的模块的路径是Resources / contactClient.js,我尝试将它加载到我的index.js中,如下所示:
var contactsClient = require('contactClient');
我检查了the documentation的CommonJS模块,根据它,这应该不是问题。
我做错了吗?我将js文件放在Resources文件夹中,是另一条路径吗?
答案 0 :(得分:0)
问题是我将模块放在Resources文件夹中,显然,CommonJS模块必须放在app文件夹内的lib文件夹中。
因此,使用CommonJS模块的Alloy项目必须具有以下结构:
root
-> app
-> lib
-> controllers
-> views
-> styles
-> models
答案 1 :(得分:0)
CommonJs模块必须位于文件夹/ app / lib /
中你也可以使用node_module / app / lib / node_modules,自TiSDK 6以来它完全兼容