0
私はToDoリストのWeb上でいくつかのチュートリアルを続けましたが、これらのチュートリアルでは実装にベストプラクティスを使用していないと思います。すべてのコードがコントローラにあります。 私のコントローラーはこのように見えますが、私はchange-listenerのコードがそこで最高の "場所"にないと思います。リスナーを実装する場所はどこですか?AngularJS PouchDB変更リスナー
.controller('TodosCtrl', ['$scope', '$state', 'Todo', function($scope, $state, Todo) {
$scope.create = function() { $state.go('todo_create'); };
$scope.todos= [];
$scope.$on('$ionicView.loaded', function() {
localDB.changes({
since: 'now',
live: true,
include_docs: true
}).on('change', function (change) {
if (change.doc && change.doc._id.substring(0, change.doc._id.indexOf('_')) === 'todo') {
if (change.deleted) {
....
} else {
....
}
}
});
});
Todo.all().then(function (result) {
for (var i = 0; i < result.length; i++) {
$scope.todos.push(result[i].doc);
}
});
}])
しかし、私は、リスナーに$スコープ変数を使用します。
はexmapleのための私のコメントを参照してください? – Andre
@Andre - 正確に – chenop
$ scopeが必要な場合、どのようにしてサービスにリスナーを置くことができますか? – Andre