2016-05-31 7 views
0

tsd (아직 typings으로 업그레이드되지 않았습니다.), React 및 JSX 함께 Typescript를 사용하려고합니다 ... oh my! ...왜 require ('react')로 인해 typescript와 "Import declaration conflicts"가 발생합니까?

import * as React from 'react'을 사용할 때 내 .tsx.tsx 파일 (Typescript + JSX)이 올바르게 컴파일됩니다 (gulp-typescript 사용). 난 그냥 잘못 가져온 경우 나는 놀라지되지 않았을 내가하지 않은 오래된 require 새로운 import 사이에 약간의 차이가

./typings/react/react-global.d.ts(17,1): error TS2440: Import declaration conflicts 
with local declaration of 'React' 

: 나는 require 문을 사용할 때, 그러나, 오류가 grokked 아직,하지만 내가 가진 특정 유형 충돌 오류가 이상한 줄 알았는데.

수입이 글로벌 tsd 선언과 더 잘 상호 작용하는 방식을 이해합니다. 여기 require 문이 오류를 발생시키는 이유는 무엇입니까? 여기

index.tsx입니다 :

/// <reference path="react-router/history.d.ts" /> 
/// <reference path="react-router/react-router.d.ts" /> 
/// <reference path="react/react-addons-create-fragment.d.ts" /> 
/// <reference path="react/react-addons-css-transition-group.d.ts" /> 
/// <reference path="react/react-addons-linked-state-mixin.d.ts" /> 
/// <reference path="react/react-addons-perf.d.ts" /> 
/// <reference path="react/react-addons-pure-render-mixin.d.ts" /> 
/// <reference path="react/react-addons-test-utils.d.ts" /> 
/// <reference path="react/react-addons-transition-group.d.ts" /> 
/// <reference path="react/react-addons-update.d.ts" /> 
/// <reference path="react/react-dom.d.ts" /> 
/// <reference path="react/react-global.d.ts" /> 
/// <reference path="react/react.d.ts" /> 
/// <reference path="node/node.d.ts" /> 
/// <reference path="express-serve-static-core/express-serve-static-core.d.ts" /> 
/// <reference path="express/express.d.ts" /> 
/// <reference path="mime/mime.d.ts" /> 
/// <reference path="serve-static/serve-static.d.ts" /> 
+0

만약 당신이'import' 나'require 할 필요가 없습니다 '아무것도. 모듈을 사용하는 경우 전역 참조를 사용하지 않아야합니다. – Aaron

+0

당신이 말한 것은 의미가 있습니다. 그러나 가져 오기를 제거하거나 요구하면 React "undefined' 오류가 발생합니다. 그것은 일종의 수입을 필요로하는 것 같습니다. –

+0

'