我是角度js的新手。我正在测试项目中使用Web Sql进行学习。我的插入操作工作正常。我的问题是当我获取所有记录然后我无法将其存储在$scope.todos=results.rows
我的代码是
tx.transaction(sql,[],myCallback)
function myCallback(tx,results)
{
console.log(results.rows); // shows objects in console
$scope.todos=results.rows;
}
在视图中,待办事项不适用于ng-repeat。
答案 0 :(得分:0)
显示所有控制器或服务可能会有所帮助。如果是控制器,请确保包含$ scope参数,例如:
.controller('MyController', function ($scope){
}))
如果您在服务中执行此操作,请将其保存在服务内部的变量中,然后从控制器中将其保存在" $ scope"可用包括您的服务然后调用包含结果的变量。如果您以后需要与其他控制器共享这些结果,这也会有所帮助。
.service('MyDataService',function(){
var todos;
return {
.... set and get functions to access variable ...
getTodos: function() {
return todos;
}
};
});
在控制器中
.controller('MyController', function ($scope, MyDataService){
$scope.todos = MyDataService.getTodos()
}))
还有一些方法可以让$ scope在服务中运行,但我认为这不是一个好主意。