Javascript 从firefox加载项选择sqlite时出错
我正在编写的firefox插件上使用librarie 我已经插入了很多没有问题的数据,但是,当我尝试做这个非常简单的选择时Javascript 从firefox加载项选择sqlite时出错,javascript,sqlite,firefox-addon,firefox-addon-sdk,Javascript,Sqlite,Firefox Addon,Firefox Addon Sdk,我正在编写的firefox插件上使用librarie 我已经插入了很多没有问题的数据,但是,当我尝试做这个非常简单的选择时 function selecionaUsuarioPorNome (nome, teste){ sqlite.execute("select * from Usuario;", function(result,status){ cm.enviaMensagem ("rows = " + result.rows + "\ncols = " + resu
function selecionaUsuarioPorNome (nome, teste){
sqlite.execute("select * from Usuario;", function(result,status){
cm.enviaMensagem ("rows = " + result.rows + "\ncols = " + result.cows);
for(var i=0;i<result.rows;i++){
for(var j=0;j<result.cols;j++){
console.log(result.data[i][j]);
}
}
});
}
在main.js中,我添加了以下主要功能:
exports.main = function (options, callbacks) {
// quando o add-on é instalado
if (options.loadReason == "install"){
// call to test if I can get the user from the database.sqlite
bd.selecionaUsuarioPorNome ("vitor", function (){});
}
}
有人知道这个错误吗
多谢各位 似乎与SQLite没有任何关系。当您尝试向附加到不再加载但仍在前向缓存(bfcache)中的页面的内容脚本(工作程序)发送消息时,会生成此错误。因此,您尝试向其发送消息的工作人员将被附加到用户或您的加载项已经导航离开的页面 从
sqlite.js
中的handleCompletion
包装执行的回调会触发此错误。很可能是下面这一行,因为其他几行看起来都不错,而这一行是唯一没有源代码的行
cm.enviaMensagem ("rows = " + result.rows + "\ncols = " + result.cows);`
如果不了解更多的代码(一个完整的、可复制的示例),我无法告诉您更多。哦,真的是这样。这个“cm”是我用来与内容脚本通信的模块。这个函数“cm.enviaMensagem”向内容脚本发送一条消息,然后,内容脚本在警报中显示此消息(这只是调试附加组件的另一种方式)。我想我理解了。此函数在加载项安装时调用,因此,内容脚本尚未附加到任何页面,工作程序无法发送消息“rows=“+result.rows+”\ncols=“+result.cows”。非常感谢你!通过接受答案,你会自动将这个问题标记为已解决(你已经这样做了)。“生活和学习”。谢谢你,康弗里克。
cm.enviaMensagem ("rows = " + result.rows + "\ncols = " + result.cows);`