2017-10-12 52 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