問題があります:私のIDEは非推奨について不平を言っています。PropsはTypescriptとの対立で廃止されたシンボルです
import React, { Props, StatelessComponent } from 'react';
import PropTypes from 'prop-types';
interface IProps {
id: string;
}
const Foo: StatelessComponent<IProps> = (props: IProps) => {
props.ref = nodeRef;
return (<div id={props.id}></div>);
};
Foo.propTypes = {
id: PropTypes.string,
};
Foo.defaultProps = {
id: 'bar',
};
export default Foo;
私は
'プロパティrefが一部に存在しません' props.refで取得しています。この時点で、私が使用しは、与えられたコードに続いて16とtypescriptです2.5.3
を反応させます
インタフェースIPropsを拡張すると、次のようになります。
interface IProps extends Props {
id: string;
}
この時点で私のIDE
interface IProps extends Props<any> {
id: string;
}
ここで、私はオンラインドキュメントに相談するように警告しますが、何も見つかりません。しかし、私の初期のref-propertyエラーはなくなりました。
私の質問:StatelessComponentを使用するとこれに対処する方法は?コンポーネントの使用時に対処する方法(またはエラーがないか)そして私はどのように避けることができますか?あなたはProps<T>
を拡張することにより、実際の問題を誤ってマスクされてきた私に