1
正しいアプローチをしているかどうか教えてください。もし私に正しいアプローチを提案してください。Typescript-Angularでtypecript definationを持たないJavascriptライブラリを拡張する
Typescript(Angular 4)でjavascriptライブラリを使用しています。
declare var Handsontable : any;
constructor (
const autocompleteEditor2 = Handsontable.editors.AutocompleteEditor.prototype.extend();
Handsontable.editors.autocompleteEditor2 = autocompleteEditor2;
Handsontable.editors.registerEditor('autocompleteEditor2', autocompleteEditor2);
)
私は@ types/Handsontableを使いたくありません。むしろ "Handsontable:any;を宣言します"プロトタイプを拡張します。これはIIFEのようなものです。直ちにTypescriptを使ってAngular 4で関数式を呼び出します。この点について私を助けてください。 –
アンビエント宣言をダウンロードしたくない場合は、実行しないでください。手作りの環境宣言は完全に無意味で、 'var foo:any'を実行すると値が追加されず、コンパイラの警告が無視されます。唯一の方法は、そのライブラリのアンビエント宣言をダウンロードすることです。これは、TSの最も強力な機能の1つであるため、実行する必要があります。 – Hitmands
問題は、* declare var foo:any *を長時間使用していることです。今すぐプロジェクトが始まりました。しかし、* foo *をカスタマイズするための特別なリクエストがありました。だから、私たちはこのような立場にいません。それはの形で* FOO *をカスタマイズするどのような方法がある私が求めている理由です* * *のtypescriptですにおける拡張の種類* –