我不能使用cordova插件

时间:2017-01-25 01:09:13

标签: cordova

我想使用$cordovaContacts。 我用离子创建了一个应用程序。然后我将“ng-cordova.min.js”复制到“www”文件夹中。我在'index.html'中调用它。 然后我将http://ngcordova.com/docs/plugins/contacts/复制到我的控制器js文件。

然后我将此代码复制到我的app js文件中:

    angular.module('ngCordova.plugins.contacts', [])

  .factory('$cordovaContacts', ['$q', function ($q) {

    return {
      save: function (contact) {
        var q = $q.defer();
        var deviceContact = navigator.contacts.create(contact);

        deviceContact.save(function (result) {
          q.resolve(result);
        }, function (err) {
          q.reject(err);
        });
        return q.promise;
      },

      remove: function (contact) {
        var q = $q.defer();
        var deviceContact = navigator.contacts.create(contact);

        deviceContact.remove(function (result) {
          q.resolve(result);
        }, function (err) {
          q.reject(err);
        });
        return q.promise;
      },

      clone: function (contact) {
        var deviceContact = navigator.contacts.create(contact);
        return deviceContact.clone(contact);
      },

      find: function (options) {
        var q = $q.defer();
        var fields = options.fields || ['id', 'displayName'];
        delete options.fields;
        if (Object.keys(options).length === 0) {
          navigator.contacts.find(fields, function (results) {
            q.resolve(results);
          },function (err) {
            q.reject(err);
          });
        }
        else {
          navigator.contacts.find(fields, function (results) {
            q.resolve(results);
          }, function (err) {
            q.reject(err);
          }, options);
        }
        return q.promise;
      },

      pickContact: function () {
        var q = $q.defer();

        navigator.contacts.pickContact(function (contact) {
          q.resolve(contact);
        }, function (err) {
          q.reject(err);
        });

        return q.promise;
      }

      // TODO: method to set / get ContactAddress
      // TODO: method to set / get ContactError
      // TODO: method to set / get ContactField
      // TODO: method to set / get ContactName
      // TODO: method to set / get ContactOrganization
    };
  }]);

最后我写了这段代码:

<ion-item ng-repeat="contact in contacts">
{{contact.name}}
</ion-item>

但它在我的Android设备上不起作用。 (我没有尝试其他设备。我现在不需要其他设备。)

和控制台错误:

enter image description here

我在互联网上研究过。但我不能使用任何cordova或离子插件。我是新人,对不起英语。

0 个答案:

没有答案