我在控制器中写了以下内容
$scope.$on('$ionicView.afterEnter', function(event, data){
var db = null;
db = $cordovaSQLite.openDB({ name: 'app.db' });
$cordovaSQLite.execute(db,"CREATE TABLE IF NOT EXISTS people (id integer primary key, firstname text, lastname text)");
});
我也在我的项目中安装了sqlite插件。
但每当我运行我的控制器时,我都会遇到错误$cordovaSQLite is not defined
答案 0 :(得分:1)
要验证应用程序中是否安装了sqlite插件的Javascript和本机部分:
window.sqlitePlugin.echoTest(successCallback, errorCallback);
侦听 onDeviceReady 事件,然后使用sqlite。
document.addEventListener("deviceready", yourCallbackFunction, false);
function yourCallbackFunction()
{
// Sqlite API implementation here
}
答案 1 :(得分:0)
使用以下命令
安装sqlite插件cordova插件添加 https://github.com/litehelpers/Cordova-sqlite-storage.git
然后在app.js页面中,在运行功能中声明$ cordovaSQLite &添加您的数据库代码,
.run(function($ionicPlatform,$cordovaSQLite,$timeout,$ionicLoading, $cordovaDialogs){
var db = null;
db = $cordovaSQLite.openDB({ name: 'app.db',location:1});
$cordovaSQLite.execute(db,"CREATE TABLE IF NOT EXISTS people (id integer primary key, firstname text, lastname text)");
})
希望这会有助于!!!!
答案 2 :(得分:0)
在.run函数中,您应该初始化db,如:
if (window.cordova) {
// App syntax
self.db = window.sqlitePlugin.openDatabase(CONFIG.DB_NAME);
} else if (window.openDatabase) {
self.db = window.openDatabase(CONFIG.DB_NAME, '1.0', 'database', -1);
}