2017-10-12 24 views
0

我們目前正在使用由React Virtualized和使用TypeScript支持的表格。RowRendererParams上缺少道具

目前我們正在研究製作自定義行渲染。

我們首先查看defaultRowRenderer的實施情況。

我們拿了那段代碼,並開始修改它以滿足我們的需求,並且我們注意到它有兩個props,它們沒有在@ types/react-virtualised類型定義中定義。

keyonRowRightClick

所以我們挖了更深一點,看看types.js,它和defaultRowRenderer.js位於同一個目錄,發現babelPluginFlowReactPropTypes_proptype_RowRendererParams也沒有定義這些道具。

然後,我們不得不看看GridList夾及其types.js文件確實包含在babelPluginFlowReactPropTypes_proptype_RowRendererParams(列表)和babelPluginFlowReactPropTypes_proptype_CellRendererParams(網格)的key道具。

keyonRowRightClick應在Table/types.js中定義。 如果是的話,他們錯過了TypeScript定義中缺少的原因嗎?

還是我想念整個地段? ;)

回答

1

如果是的話,他們錯過了TypeScript定義中缺少的原因嗎?

TypeScript的定義不是由我維護的,所以它們可能會落後於實際的項目,沒有很好的理由。

至於爲什麼這些道具從git rep中的Flow類型中丟失 - 可能只是一個疏忽。該類型不是嚴格的對象類型,因此附加屬性不會被視爲錯誤。我們應該將它們添加到類型中並修復它。

+0

我認爲TS定義維護者使用types.js文件來確定需要在定義中實現的東西。 'key'支持被添加了[去年9月](https://github.com/bvaughn/react-virtualized/commit/0d948540dbcea7fbcd8b2c6bab76453dc5a8b300#diff-5e3b0444be3b21a58da6e1fa5b47ba0e),TS定義最近一個月前更新。我會看看我是否可以跟蹤維護人員,讓他們知道它缺失。感謝您及時的回覆! – AndyJ