0

アプリケーションの開始時に javascript ファイル内から、pouchdb クライアント データベースをロードしようとしていますが、データベースが作成されません。デバッガーにコンソール エラーはありません。デバッグしようとすると、匿名関数を終了し、さらに関数にステップインできないため、以下の行で失敗するようです。

ここで失敗します--> angular.module('app').factory(serviceId, [ 'pouchdb', createclientdb]);

なぜ私が間違っているのでしょうか?

 (function () {
        'use strict';

        var serviceId = 'clientedb';
        angular.module('app').factory(serviceId, [ 'pouchdb', createclientdb]);

        function createclientdb(pouchdb) {

            return pouchdb.create('mydb', function callback(err, result) {

                if (!err) {
                    alert('Successfully added a program!');
                }
                else {
                    alert('Failed added a program!');
                }
            });

            return true;
        }

    });

最新のエラーにより、キャッチされない例外が生成されます。

 (function () {

        'use strict';

        var databasename = 'mydb';

        angular.module('app.clientdb', [])
            .factory('clientdb', ['pouchdb', function (pouchdb) {
                return pouchdb.create(databasename, function callback(err, result) {

                    if (!err) {
                        alert('Successfully added a program!');
                    }
                    else {
                        alert('Failed added a program!');
                    }
                });
            }]);

    });

以下のサービスも行っています。助言がありますか?

(function () {
    'use strict';

    angular.module('app').factory('clientdbservice', ['pouchdb','app.clientdb',clientdbservice]);


    function clientdbservice(clientdb) {
        return {
           adddata: function (obj) {
               clientdb.put(obj)
                    .then(function () {
                     log('data added to  Client DB');
                    })
                    .catch(function (error) {
                        log('Could not add data to  Client DB');
                    }).finally(function () {
                        // Do something when everything is done
                    });
            }
               };
        };
});
4

1 に答える 1

0

私はあなたのエラーが正確にどこにあるのか100%ではありませんが、以下は私のために働いています

'use strict';
angular.module('app.clientedb', [])
    .factory('clientedb', ['pouchdb', function(pouchdb) {
        return pouchdb.create('mydb', function callback(err, result) {

            if (!err) {
                alert('Successfully added a program!');
            }
            else {
                alert('Failed added a program!');
            }
        });
    }]);

jsファイルも順番に含めています

<script src="/lib/pouchdb-nightly.js"></script>
<script src="/lib/angular-pouchdb.js"></script>

そして、Angular Ikeをセットアップしています

angular.module('app', [
                       'pouchdb',
                       'app.clientedb',
])
于 2014-05-28T17:31:28.910 に答える