Ошибка: "транзакция null".
Случае анализа
index.js
var db = null; var db2 = null; var db3 = null; var dbUser = null; var dbName = "estudos.db"; var app = { // Application Constructor initialize: function() { document.addEventListener('deviceready', this.onDeviceReady.bind(this), false); }, // deviceready Event Handler // // Bind any cordova events here. Common events are: // 'pause', 'resume', etc. onDeviceReady: function() { this.receivedEvent('deviceready'); }, // Update DOM on a Received Event receivedEvent: function(id) { var parentElement = document.getElementById(id); _**// Line 43--->> var listeningElement = parentElement.querySelector('.listening');**_ var receivedElement = parentElement.querySelector('.received'); listeningElement.setAttribute('style', 'display:none;'); receivedElement.setAttribute('style', 'display:block;'); // OPERACOES BD - inicio //banco de dados local - aceite de termos e outras coisas dbUser = window.sqlitePlugin.openDatabase({name: 'user.db', location: 'default'}); dbUser.transaction(function(tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS Users (flg_aceite, flg_valid_bd)'); }, function(error) { alert('Transaction ERROR: ' + error.message); }, function() { console.log('Database OK'); }); //copia do banco de dados de estudos window.plugins.sqlDB.copy(dbName, 0, copysuccess, copyerror); // OPERACOES BD - fim } }; app.initialize(); //--------------------------------------------------------------- function copysuccess() { //primeira versão deste banco de dados. o comando anterior. //provavelmente realizou a cópia, abro o BD. db = window.sqlitePlugin.openDatabase({name: dbName}); //preciso verificar se existem versões anteriores deste BD. Deleto por precaucao dropTable(); fts_table(); } function copyerror(e) { //esta versao do banco de dados ja existe. //abro o BD db = window.sqlitePlugin.openDatabase({name: dbName}); //db3 = window.sqlitePlugin.openDatabase({name: "vtestudos"}); //alert("copyerror" + JSON.stringify(e)); } //--------------------------------------------------------------- function fts_table(){ db.transaction(function(tx) { tx.executeSql('CREATE VIRTUAL TABLE vtestudos USING FTS3(titulo, texto, id_titulo)', [], function(tx,res){ //alert("nao deu erro"); //db = window.sqlitePlugin.openDatabase({name: "vtestudos"}); //alert("opened"); db.transaction(function(tx) { tx.executeSql('INSERT INTO vtestudos(titulo, texto, id_titulo) SELECT titulo, texto, id_titulo FROM estudos', [], function(tx,res){ //db3 = window.sqlitePlugin.openDatabase({name: "vtestudos"}); console.log('insert ok'); }); }, function(err){ alert(err.message); }); }); }, function(err){ alert(err.message); });
Что я уже пробовал:
Я попытался изменить свою базу данных, изменив свою cordova.js и даже мой index.js замена индекса для вызова my otherPAGE.js
CHill60
Совет: избавьтесь от ссылки и опубликуйте код, который дает проблему, и укажите ошибку в вашем вопросе. Ваш пост оказался в очереди модерации спама (из-за ссылки), и я чуть не сообщил о нем как о спаме, потому что это выглядело как вождение сайта.
MarkNopfler
Спасибо за совет. Я вижу. Я обновлю вопрос!
ZurdoDev
Я не понимаю, о чем вы спрашиваете.
MarkNopfler
Что вы не поняли из моего вопроса?
MarkNopfler
Чего ты не понял? У меня нет на это времени.
ZurdoDev
Что означает "обнаружить недоступную базу данных"?
ZurdoDev
Почему бы и нет otherPage.js получите ценность?
MarkNopfler
Это означает, что мой код(otherPage.js) не получить значение из базы данных, но index.js код получает текущее значение из базы данных. Я не знаю, есть ли у вас уже этот тип ошибки с помощью cordova или phonegap.
ZurdoDev
Какая ошибка? Я не вижу никакой ошибки.
MarkNopfler
https://github.com/GustavoDesc/PhonegapProjectAllFiles/issues/2 -вот. Вы можете посмотреть, пожалуйста?
ZurdoDev
Нажмите кнопку улучшить вопрос и поместите ошибку в вопрос здесь. Не ждите, что люди будут гоняться за вами, пытаясь помочь. Дайте нам все, что нам нужно.
И какая строка кода вызывает ошибку? Что-то пусто. Просто исправь это.
MarkNopfler
Справа .. Я обновлю, только на минутку.
MarkNopfler
_ * * / / Строка 43 - - - >> var listeningElement = parentElement.querySelector('.слушать);**_
ZurdoDev
Тогда ошибка означает, что parentElement равен null. Вам нужно отладить свой код и выяснить, почему.
MarkNopfler
Но после кода отладчика Android Studio показывает мне это сообщение об ошибке в строке 43.
Я хочу только знать, если код ошибки вызван тем, что страница не распознала базу данных.В otherPage.js оставайтесь без распознанной базы данных. Я не знаю, есть ли у вас опыт работы с cordova или phonegap, потому что у многих людей уже есть такая же проблема.
ZurdoDev
Я не использовал cordova или phonegap, но я отлаживал код в течение многих лет, так что это то, что я бы сделал.
MarkNopfler
на изображении есть сообщение об ошибке, которое говорит: транзакция null...