2016-10-24 11 views
1

私はタイプスクリプトとの反応を開発しています@typesなしの反応成分ライブラリーを使用

@types定義なしで反応成分ライブラリーを使用することです。

私は私のコードを反応させるので
https://github.com/react-component/calendar

このライブラリを使用したいのですが、私は

import * as React from "react"; 
import * as ReactDOM from "react-dom"; 
import Calendar from 'rc-calendar'; 

ReactDOM.render(<Calendar />, document.getElementById('content')); 

以下のように書きましたが、私はエラーを取得:

ERROR in ./index.tsx 
(4,22): error TS2307: Cannot find module 'rc-calendar'. 

私はこれは、型定義がないためですが、上記のライブラリにはtypescriptの型定義ファイルがないようです。
TypeScriptでこのようなライブラリを使用するにはどうすればよいですか?

+0

定義なしのTypescriptのJavascriptは完全に合法です。あなたはあなたの 'node_modules'にこのライブラリを持っていて、それはwebpackに含まれていますか? – gretro

答えて

2

TypeScript 2.1では、--noImplicitAnyを使用していない限り、宣言ファイルなしでこのライブラリを使用することができます(インストールされている場合)。

しかし、TS 2.1はあなたが何ができるか、まだ出ていないので、次の内容のexternals.d.tsと呼ばれるファイルを作成します:

declare module "rc-calendar"; 

基本的に活字体「ねえ、この事は存在を伝え、私を盗聴停止しかし、私はそれを使いたいと思っています。

また、やや良い形にすることもできます。

declare module "rc-calendar" { 
    declare var calendar: any; 
    export default calendar; 
} 

これはデフォルトのインポートとしてのみインポートできます。

十分に詳細になるまで、このことを引き出すことができます。

+0

ありがとう、私はそれを正常にコンパイルできた – user2875308

関連する問題