這是特定於我將從標準ES2015轉換爲Typescript的React應用程序。在我的.tsx文件(從常規的.js文件轉換而來)中,我收到了幾個打字稿錯誤,我不知道如何解決。轉換React項目時的Typescript錯誤
第一個是:error TS2339: Property 'propTypes' does not exist on type 'typeof App'.
適用於:
App.propTypes = {
actions: PropTypes.object.isRequired,
fuelSavingsAppState: PropTypes.object.isRequired
};
我試圖創建一個以上代碼的接口定義的應用程序,如:
interface App {
propTypes?: any;
}
但是,這並沒有影響。很顯然,我對Typescript很陌生,所以我錯過了什麼?
其他錯誤是:
error TS2605: JSX element type 'Element' is not a constructor function for JSX elements.
Property 'render' is missing in type 'Element'
這適用於:
{settings.necessaryDataIsProvidedToCalculateSavings ? <FuelSavingsResults savings={settings.savings} /> : null}
錯誤具體是指一些關於<FuelSavingsResults
完全茫然到哪裏,甚至從那開始。任何建議是最受歡迎的。
的情況下,它可以幫助,爲FuelSavingsResults的定義開始,如:
let FuelSavingsResults = (props) => {
let savingsExist = NumberFormatter.scrubFormatting(props.savings.monthly) > 0;
let savingsClass = savingsExist ? 'savings' : 'loss';
let resultLabel = savingsExist ? 'Savings' : 'Loss';
,然後有一個遵循規律陣營渲染方法,但我不認爲這會事。
這個錯誤最近被解決了,它讓我想知道它的Typescript真的準備好用於React。你怎麼看?對於React,它仍然是「測試版」嗎? – Stuart
@Stuart我正在用它來構建它:http://alm.tools/它的測試不如React本身錯誤大多是TypeScript提供*更多的幫助*,否則它將*完全不存在並被忽略直到運行時*。 – basarat