我使用带有Samsung A5的Windows 8.1下的Appcelerator Studio。现在我想使用mysql nodejs modul。我在网上反复将mysql副本的目录复制到我的Resources目录下。 所以,我的文件夹看起来像这样:
Projectname
+-- Resources
+-- android
+-- mysql
| +-- lib
| | +--- ...
| +-- node_modules
| | +--- ...
| \- index.js
\- app.js
这是我的app.js:
var mysql = require('mysql');
var connection = mysql.createConnection({
host: 'domain',
user: 'user',
password: 'password',
database: 'database'
});
connection.connect(function (err) {
if (err) {
alert("Error on mysql connect: " + err.stack);
return;
}
});
alert("Mysql connect is correct.");
connection.end();
该项目安装在Samsung上,但在启动时抛出错误:找不到mysql模块。
出了什么问题。 拜托,帮助我!
感谢您的帮助,对不起我的英语!
答案 0 :(得分:2)
在Titanium的iOS / Android上没有MySQL这样的东西。那里的数据库是SQLite。您可以在documentation of Appcelerator中了解SQLite。
它也不是一个模块,而是一个good old
API。示例(来自文档)
var db = Ti.Database.open('TiBountyHunter');
db.execute('CREATE TABLE IF NOT EXISTS fugitives(id INTEGER PRIMARY KEY, name TEXT, captured INTEGER, url TEXT, capturedLat REAL, capturedLong REAL);');
db.close();
如果您有一个名为mysql
的模块,则应将其放在lib
文件夹中以使其正常工作。但是,如果它具有Node依赖性,则可能很难。然后,您可以使用Titaniumifier