2016-08-21 6 views
1

私はフレームワークを使用していますが、私はそのプロパティ(アイテムと呼ばれています)を見ていますが、それは私にインテリセンスを与えません。他のすべてが動作します。それは私にフィードバックを与えていなかった理由を理解するために、このプロパティを調査した後、私はそうTypescript:共有タイプのインテリセンスなし

item: TG.BaseItem | TG.ClosedItem | any; 

のようなそのセットは、だから私は問題は活字体は、それが何であるかの種類を知っていないことであると考えていることに気づきます。最初はNULLで、タイプを設定する別の関数を実際に呼び出して、そのタイプを知っています。

また、実行時にjsをテストし、それが正常に動作するようにしました。

私はそれが何であるかを知っているように、それは私にTB.ClosedItemのためのintellisenseを与えることができるようにtypescriptに援助を与えるとにかくありますか?

私はアイテムの署名を変更しないようにしたいと思っています。それは私に属していません。事実は、そのアイテムは特定のものに応じていくつかのものになる可能性があるということです。私はいつもそれが何であるかを知っていますが、私はそれが何であるかをタイプスクリプトに伝えることができます。私は収集品を行うとき、私はそう

collectables.item.#No additional properties shown# 

を行うよう

私のオブジェクトは収集品であるとの点は、私は収集品内部の特性および機能の長いリストを取得します。次にアイテムを選択してから点を選択すると、HasOwnProperty、Constructorなどの標準的なJSの項目だけが表示されますが、アイテムのプロパティや機能はありません。

誰でもこれに関するアイデアをお持ちですか?

おかげ

答えて

1

code example with completion 画像は上記のこと完了あなたはtypescriptですが、タイプ(さらにのdetailes here)を絞り込むのに役立つ場合には労働組合のタイプで動作を示します。任意の型を定義に追加すると(| any〜9行目)、typescriptはコード補完を行うことができません。ユニオンは、それらの迷惑なものを置き換えるのを助け、オプションを絞り込むために作られました。あなたのケースでは、タイプをanyと定義するだけで、BaseItem | ClosedItem | anyと同等になります。

関連する問題