1 回答

TA貢獻1772條經驗 獲得超8個贊
最近在公司正在用 Spacemacs + TypeScript 寫 React Native??傮w來講依靠各種補全和糾錯,效率還是比不用
TypeScript 高的。不過 DefinitelyTyped 的 react-native.d.ts 一定是不夠新的, 比如想用 React
Native 0.21 剛出的 NavigatorExperimental 的話就得自己寫 type definition。好在
TypeScript 1.8 允許我們擴展別人的 module definition,一部分的類型還是可以自己修補修補的。很多 React
Native 的 third party library 都是沒人寫過 type definition 的,那也得自己寫。
TypeScript 的編譯速度還不錯,tsc + babel 雙層編譯下 live reload 的速度還是可以接受的。
一個問題是 React Native packager 不直接支持 third party 的 source map,這意味著 backtrace 對應的是 tsc 編譯好的 ES6 文件,debug 起來不夠方便。
TypeScript 不知道 React Native 里面是用 require 來引用圖片資源的,這個也有點 hacky。
說一個跟 React Native 無關的:TypeScript 非常依賴于 type annotation,幾乎沒有 bidirectional typechecking,更不用說 whole program type inference 了。相比之下 flow 的 inference 還是要強大一些。當然了,JS 里面各種 implicit union type 還有 subtyping,我想也是沒辦法 infer 的。
- 1 回答
- 0 關注
- 1186 瀏覽
添加回答
舉報