1

こんにちは、TypeScript & Jquery で ""Autocomplete""" を実行しようとしています。

 this.$("#testAuto").autocomplete({
           source: [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ]
           });

しかし、コンパイラはどの d.ts ファイルでもオートコンプリートを見つけることができません。

 **error TS2094: The property 'autocomplete does not exist on value of type 'JQuery'.**

Jquery v2 を使用しています。

助けてください !!

4

1 に答える 1

2

autocomplete.d.ts ファイルへの参照を追加する必要があります。例:

/// <reference path="path/to/your/jquery.autocomplete.d.ts" />

間違った定義ファイルを使用していると思われますが、これを使用する必要があります: https://github.com/borisyankov/DefinitelyTyped/blob/master/jqueryui/jqueryui.d.ts

必要な定義が含まれています。

interface JQuery {
    // ...

  autocomplete(): JQuery;
  autocomplete(methodName: string): JQuery;
  autocomplete(methodName: 'close'): void;
  autocomplete(methodName: 'destroy'): void;
  autocomplete(methodName: 'disable'): void;
  autocomplete(methodName: 'enable'): void;
  autocomplete(methodName: 'search', value?: string): void;
  autocomplete(methodName: 'widget'): JQuery;
  autocomplete(options: JQueryUI.AutocompleteOptions): JQuery;
  autocomplete(optionLiteral: string, optionName: string): any;
  autocomplete(optionLiteral: string, options: JQueryUI.AutocompleteOptions): any;
  autocomplete(optionLiteral: string, optionName: string, optionValue: any): JQuery;

    // ... 
}

更新: 迅速で便利なソリューションブートストラップ バージョンを使用しているため、jquery.autocomplete.d.ts および jqueuryUI への参照を削除します。コードの前に次のブロックを追加します。

interface JQuery{
   autocomplete(config:{source:string[];});
}
于 2013-07-16T10:21:41.887 に答える