Ahoj som sa snažil robiť "" Automatické dopĺňanie "" v TypeScript & Jquery.
this.$("#testAuto").autocomplete({
source: [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ]
});
Ale kompilátor nemôže nájsť autokomplet v žiadnom z týchto súborov.
**error TS2094: The property "autocomplete does not exist on value of type "JQuery".**
Používam Jquery v2.
Prosím pomôžte !!
odpovede:
2 pre odpoveď č. 1Musíte pridať odkaz na súbor autocomplete.d.ts, napr .:
/// <reference path="path/to/your/jquery.autocomplete.d.ts" />
Aj keď mám podozrenie, že používate nesprávny súbor definícií a mali by ste ho používať: https://github.com/borisyankov/DefinitelyTyped/blob/master/jqueryui/jqueryui.d.ts
Obsahuje požadovanú definíciu:
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;
// ...
}
Aktualizácia: Rýchle užitočné riešenie Keďže používate verziu systému bootstrap, odstrániť odkaz na jquery.autocomplete.d.ts a jqueuryUI. A pred spustením kódu zadajte nasledujúci blok:
interface JQuery{
autocomplete(config:{source:string[];});
}