2017-09-14 80 views
0

我正在尝试在我的Ionic 2应用程序中搜索电话号码,该电话号码在前面有+1。Ionic找到联系人

import { Component } from '@angular/core'; 


import { IonicPage, NavController, NavParams } from 'ionic-angular'; 
import { CallNumber } from '@ionic-native/call-number'; 
import {Contacts, Contact, ContactField, ContactAddress, ContactName,ContactFindOptions} from '@ionic-native/contacts'; 
import {ContactInterface} from "../../models/interfaces/contactInterface"; 

/** 
* Generated class for the ContactMenuPage page. 
* 
* See http://ionicframework.com/docs/components/#navigation for more info 
* on Ionic pages and navigation. 
*/ 
@IonicPage() 
@Component({ 
    selector: 'page-contact-menu', 
    templateUrl: 'contact-menu.html', 
}) 
export class ContactMenuPage { 

    contact : ContactInterface; 

    constructor(public navCtrl: NavController, 
       public navParams: NavParams, 
       private callNumber: CallNumber, 
       private contactCtrl: Contacts) { 
     this.contact = this.navParams.get('contact'); 
     this.contact.exists = false; 
    } 

    ionViewDidLoad() { 

    this.contact.exists = false; 
    console.log(this.contact.cell[0]); 

    var options = new ContactFindOptions(); 
    options.hasPhoneNumber = true; 
    options.filter = this.contact.cell[0]; 
    options.multiple = true; 

    this.contactCtrl.find(['phoneNumbers'], options).then(
     (contacts) => { 
      console.log(contacts); 
     } 
    ); 



    } 

每当我这样做,它只是给我的第一个联系人被添加到联系人列表。如果没有匹配,它不能给我任何东西。

你能给我一些指点吗?

+0

更多的上下文将有助于回答这个问题。什么是contactCtrl?确实找到退货承诺? – rjustin

+0

和神奇的是,我发布这个查询,它完美的作品。 – Jed

+1

我会为未来的人更新它 – Jed

回答

0

上面的代码使用cordova的联系人插件,它返回一个联系对象数组。我不知道为什么它不工作之前,但现在它的工作完美,所以上面的代码是好的