angular-pouchdb:pouchDB未定义或不是函数

时间:2015-10-04 19:05:35

标签: angularjs pouchdb

我已在我的角应用中安装了此库:https://github.com/angular-pouchdb/angular-pouchdb(使用ionic add angular-pouchdb)。

但是当我尝试声明一个实例化数据库的工厂时,我收到了这个错误:Uncaught ReferenceError: pouchDB is not defined。请参阅下面的代码。

app.js中的模块注入:

angular.module('BoardLine', ['ionic', 'ngCookies', 'ui.unique', 'pouchdb', 'BoardLine.controllers', 'BoardLine.services', 'BoardLine.filters'])

出现在services.js中的工厂,使数据库在应用程序的任何位置都可用:

.factory('usersDatabase', [ function(pouchdb) {
    var usersDatabase = pouchDB('boardline_users');
    var remote = 'https://louisromain:bingin/*@louisromain.cloudant.com/boardline_users';
    var opts = {live: true,
                retry: true};
    usersDatabase.replicate.to(remote, opts);
    usersDatabase.replicate.from(remote, opts);
    //console.log(usersDatabase);
    return usersDatabase;
}])

在index.html中调用Srcipt:

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

Nota:如果我改为写.factory('usersDatabase', [ function(pouchDB) {(大写DB而不是小写db), 我收到此错误:Uncaught TypeError: pouchDB is not a function

2 个答案:

答案 0 :(得分:0)

请检查错字puchDB - &gt; puchdb

  

.factory(&#39; usersDatabase&#39;,[function( pouchdb ){       var usersDatabase = pouchDB (&#39; boardline_users&#39;);

答案 1 :(得分:0)

Angular-pouchdb依赖于pouchdb,因此index.html中需要此行:

<script src="lib/pouchdb/dist/pouchdb.min.js"></script>