2017-11-22 18 views
2

私は最近VS2017を更新しました。タイプコピーのビルドエラーが多く発生しています。Typescriptビルドエラー - これは何が問題なのですか?

エラーはすべて同じで、すべてd.tsファイルの妥当性に関連しています。ここで

typescriptですコンパイルエラー(TS2411)を引き起こしているd.tsファイルにいくつかのコードです:誤りがある

interface JQueryAjaxSettings { 
} 

interface DataSourceTransportCreate extends JQueryAjaxSettings { 
    cache?: boolean; 
    contentType?: string; 
    data?: any; 
    dataType?: string; 
    type?: string; 
    url?: any; 
} 

interface DataSourceTransport { 
    create?: DataSourceTransportCreate; 
    destroy?: DataSourceTransportDestroy; 
    push?: Function; 
    read?: DataSourceTransportRead; 
    signalr?: DataSourceTransportSignalr; 
    update?: DataSourceTransportUpdate; 

    parameterMap?(data: DataSourceTransportParameterMapData, type: string): any; 
} 

interface DataSourceTransportOptions { 
    success: (data?: any) => void; 
    error: (error?: any) => void; 
    data: any; 
} 

interface DataSourceTransportWithFunctionOperations extends DataSourceTransport { 
    create?: (options: DataSourceTransportOptions) => void; 
    destroy?: (options: DataSourceTransportOptions) => void; 
    read?: (options: DataSourceTransportReadOptions) => void; 
    update?: (options: DataSourceTransportOptions) => void; 
} 

TS2430(TS)インターフェース「DataSourceTransportWithFunctionOperations ' は、' DataSourceTransport 'インターフェイスを誤って拡張します。タイプ ' 'のプロパティ 'create'は互換性がありません。 タイプ '(options:DataSourceTransportOptions)=>' void 'には、' DataSourceTransportCreate 'タイプと共通のプロパティがありません。スクリプト (TSconfigの プロジェクト)C:\ユーザー**** \タイピング\剣道\ kendo.all.d.tsアクティブ1202 "このエラーは、他のプロパティの全体のホストのために繰り返される

私の質問です - ??これが突然無効になる原因となるいくつかの変化(すなわちVSでビルドエラーとして示されている)

+0

DataSourceTransportCreateのタイプは何ですか?あなたのタイスクリプトのバージョンを更新し、いくつかのインターフェースを壊した可能性はありますか? – Axnyff

+0

DataSourceTransportCreateの定義を追加する答えを編集しました。 – Darrell

+0

AFAIK私のcsprojファイルにtypescriptのバージョンが指定されています: 2.3これは変更されていません。私のtsconfigファイルはこれを持っていますが、 "{ " version ":" 1.8.0 "、"これはこの問題と関連があるかどうかはわかりません。 – Darrell

答えて

0

はありません、定義が有効ではありません、この定義が有効であってきたDataSourceTransportWithFunctionOperationsさん。 create(options: DataSourceTransportOptions): voidのオーバーライドは、全く機能していない基盤create: DataSourceTransportCreateと互換性がありませんが、オプションバッグです。

Typescriptは2.4以降のオプションバッグでこれらのエラーを検出しましたが、この特定のエラーはメソッドタイプを含んでいるため2.5以降しか検出できませんでした。この変更はおそらく、あなたの最新のVSアップデートがTypescript 2.3または2.4以降に切り替えたことでしょう。

根本的な問題は、剣道の入力が古くなっていることです。あなたが見つけたように、公式のタイピングは8月に修正されました。入力内容を更新する場合は、新しいバージョンのTypescriptでエラーなくコンパイルするように修正する必要があります。

+0

ありがとう。 VS2017の最新のアップデートでは、TSCバージョン2.5.3をPATHに入れているようです。私は剣道のタイピングを更新することができましたが、ノックアウトタイピングや他のタイピングには問題がありましたが、修正する時間はありません。あなたが追加できるコンパイラオプションの下で、tsconfigファイルに便利なオプションがもう1つ見つかりました: '' skipLibCheck ":true'。これは問題を解決するものではなく、以前と同じように隠しておきますので、慎重に使用してください。 – Darrell

関連する問題