如何访问一个Sql litevariables从一个Js到Cordova中的另一个Js

您好我已经在我的项目中实现了一个SqlLite,我在Login.js中创build数据库,但我的问题是现在我需要更新另一个JS的列。 如何从另一个JS访问一个DBvariables。 代码A.js:

function onDeviceReady() { window.db = window.openDatabase("SP_DB", "1.0", "SPDB", 200000); }; 

现在我需要访问从另一个JS的window.db列添加或更新。 如何实现这一点

代码B.js:在这里,我需要访问该window.dbvariables,我不想再次创build数据库。

 var saveimg = document.getElementById("saveimg"); saveimg.addEventListener('click', goInsert, false); function goInsert() { window.db.transaction(insertDB, errorCB, successCB); } function insertDB(tx) { tx.executeSql('INSERT INTO SP(FirstName,LastName,Address) VALUES ("' + document.getElementById("txtFirstName").value + '","' + document.getElementById("txtLastName").value + '","' + document.getElementById("txtAddress").value + '")'); } function errorCB(err) { alert("Error processing SQL: " + err.code); } function successCB() { alert("success!"); db.transaction(queryDB, errorCB); } function queryDB(tx) { tx.executeSql('SELECT * FROM SP', [], querySuccess, errorCB); } 

您的variableswindow.db位于全局范围内。 所以你可以在同一页面的任何地方访问它。 我希望你提到的另一个JS是在同一个页面上。 如果它在不同的页面,它将无法正常工作。

cordova应用程序应采用SPA(单页应用程序)devise。 如果您不使用SPA,则需要在每个页面中定义所需的variables。 请检查https://cordova.apache.org/docs/en/latest/guide/next/#1-spa-is-your-friend