【发布时间】:2015-07-22 07:07:17
【问题描述】:
我正在使用 VS 2013、sqliteplugin.js (io.litehelpers.cordova.sqlite)、angularjs、jquerymobile、Ripple 开发基于科尔多瓦的混合移动应用程序,以便在开发期间运行应用程序。
我添加了 sqliteplugin,这是我的 index.html 文件
<script src="plugins/io.litehelpers.cordova.sqlite/Lawnchair-adapter/test-www/lib/qunit.js"></script>
<script src="plugins/io.litehelpers.cordova.sqlite/Lawnchair-adapter/test-www/lib/json2.js"></script>
<script src="plugins/io.litehelpers.cordova.sqlite/Lawnchair-adapter/test-www/lib/lawnchair.js"></script>
<script src="plugins/io.litehelpers.cordova.sqlite/www/SQLitePlugin.js"></script>
<script src="plugins/io.litehelpers.cordova.sqlite/Lawnchair-adapter/test-www/Lawnchair-sqlitePlugin.js"></script>
<script src="plugins/io.litehelpers.cordova.sqlite/Lawnchair-adapter/test-www/lawnchair-spec.js"></script>
function onDeviceReady() {
// Handle the Cordova pause and resume events
document.addEventListener('pause', onPause.bind(this), false); //jshint ignore:line
document.addEventListener('resume', onResume.bind(this), false); //jshint ignore:line
appObj.spa.status.deviceReady = true;
appObj.spa.status.cordovaReady = appObj.spa.api.cordova.cordovaReady();
appObj.spa.api.angular.bootstrap();
下面是我创建数据库然后在其中创建表的代码..
// TODO: Cordova has been loaded. Perform any initialization that requires Cordova here.
db = window.sqlitePlugin.openDatabase('vitaegodb', '1.0', 'VITAE_Go_Db', 200000);
db.transaction(createTables, errorCB, successCB);
}
函数 createTables(tx) {
var createtblActivityCancel = "CREATE TABLE IF NOT EXISTS [tblActivityCancel]([ActivityId] [nvarchar](50) NOT NULL,[DayPlanId] [int] NOT NULL,[WorklistId] [nvarchar](255) NOT NULL,[ResourceId] [int] NOT NULL,[ReasonId] [int] NOT NULL,[Remark] [nvarchar](255) NULL,[ChangeState] [int] NOT NULL,[Synchronized] [bit] NOT NULL,CONSTRAINT [PK_tblActivityCancel] PRIMARY KEY([ActivityId],[DayPlanId]));";
tx.executeSql(createtblActivityCancel);
}
现在,我收到一个弹出窗口“我喜欢 CheezBurger 吗??”在涟漪中说“我们似乎缺少一些东西:(”
同样在 sqliteplugin.js 文件中,它会在下面的函数中引发异常:
mycb = function(result) {
var last, q, r, res, type, _i;
last = result.length - 1;
for (i = _i = 0; 0 <= last ? _i <= last : _i >= last; i = 0 <= last ? ++_i : --_i) {
r = result[i];
type = r.type;`enter code here`
res = r.result;
q = mycbmap[i];
if (q) {
if (q[type]) {
q[type](res);
}
}
}
};
我发现结果是未定义的,因此当它试图找到
最后 = 结果.长度 - 1;
它抛出异常找不到未定义的长度。
纹波误差
![SQLiteplugin.js 文件异常][1]
【问题讨论】: