外部の依存関係がある場合、新しい型をDefinitelyTypedに追加する方法を理解するのに問題があります。パッケージがホワイトリストに登録されていないので、フォルダにpackage.jsonを追加しない限り、モジュールが見つからないためテストをパスすることができません。ここで外部依存関係を持つ新しいタイプをDefinitelyTypedに追加するにはどうすればよいですか?
は、プルリクエストです:
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/21581
// index.d.ts
import {
ApolloClient,
ObservableQuery,
WatchQueryOptions,
ApolloError
} from 'apollo-client';
はまた、私のテストでは、私は実際にそれを使用できるように、私は必要ないくつかの他の依存関係がありますが、devDependenciesではありませんリンターによって許可されています。 。
: -のでpackage.jsonせずに、私はモジュールが 『暴徒-アポロ』が見つかりません」と言うテスト中にエラーが発生します理にかなって
は、だから私はpackage.jsonを追加しました
{
"private": true,
"dependencies": {
"apollo-client": "^2.0.0",
"graphql-tag": "^2.0.0",
"mobx": "^3.0.0"
}
}
今、私はリンター中にエラーが発生します:あなたはホワイトリストを見れば
Error: In /home/travis/build/DefinitelyTyped/DefinitelyTyped/types/mobx-apollo/package.json: Dependency apollo-client not in whitelist; please make a pull request to types-publisher adding it.
はしかし、それは非常に小さいので、これはこの問題に対処する適切な方法することはできません...ですそれは?私はあなたが腐っていなければならないと思います依存関係を持っているすべてのパッケージに対して、このリストは膨大なものになります。
https://github.com/Microsoft/types-publisher/blob/master/dependenciesWhitelist.txt
だから私はここに何をすべきでしょうか?
したがって、独自のタイプを定義するパッケージDefinitelyTypedで)、ホワイトリストに依存関係を追加する必要がありますか? – Paul
これは通常、TS自体のプロジェクトソースによって生成されるため、手書きの代替案よりはるかに正確で揮発性が低い傾向があり、常に最新の状態になるため、DTの方が望ましいので、そのような場合にはパッケージがホワイトリストに登録されている必要はありません – alechill