2017-07-19 16 views
1

以下のようなGoogleの場所を検索するために、Angularでカスタムコンポーネントを作成しました。以下のコードはちょっとしたアイデアです。Ionic 2、ControlValueAccessorインターフェイスの問題

@Component({ 
    selector: 'app-googleplace', 
    templateUrl: './googleplace.component.html', 
    providers: [ 
    { 
     provide: NG_VALUE_ACCESSOR, 
     useExisting: forwardRef(() => GoogleplaceComponent), 
     multi: true 
    } 
    ] 
}) 
export class GoogleplaceComponent implements ControlValueAccessor { 
/* rest of stuff */ 
    writeValue(value: GooglePlaceStruct) { 
    // sets the value 
    } 

    registerOnChange(fn: any) { 
    this.onChangeCallback = fn; 
    } 

    registerOnTouched(fn:any) { 
    this.onTouchedCallback = fn; 
    } 
} 

そして、それはウェブサイト上で正常に動作し、 今私はイオン入力で使用する場合、ControlValueAccessorインタフェース・メソッドが呼び出されることはありませんイオン2アプリ、にウェブサイトを変換しています。

任意のポインタ?このものの

答えて

0

かなり古いです:

イオンは(see here)自分自身でion-inputに渡された任意のControlValueAccessorを置き換えます。これがあなたのControlValueAccessorが呼び出されない理由です。

関連する問題