首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >griddle-react将额外的道具传递给自定义组件

griddle-react将额外的道具传递给自定义组件
EN

Stack Overflow用户
提问于 2016-10-10 22:04:12
回答 1查看 689关注 0票数 0

我已经像这样定义了griddle-react的列元数据:

代码语言:javascript
复制
const cols = [
  {"columnName": 'id', "displayName": "ID", "visible": false, "order": 1},
  {"columnName": 'name', "displayName": "Name", "order": 2, "customComponent": BrandNameLink},
  {"columnName": 'description', "displayName": "Description", "order": 3},
  {"columnName": 'dateCreated', "displayName": "Date Created", "visible": true, "order": 4, "customComponent": DateComponent},
  {"columnName": 'lastUpdated', "displayName": "Last Updated", "visible": true, "order": 5, "customComponent": DateComponent},
];

对于namedateCreatedlastUpdated,我希望将额外的属性传递给这些自定义组件。例如,我的DateComponent如下所示:

代码语言:javascript
复制
import React from 'react';
import Time from 'react-time';

const DateComponent = (props) => {
  return (<Time value={props.rowData.dateCreated} format="MM-DD-YYYY" />);
}

export default DateComponent;

但我希望能够告诉它使用rowData中的dateCreatedlastUpdated,而不是创建两个几乎相同的组件(每个date属性一个)。

EN

回答 1

Stack Overflow用户

发布于 2016-10-12 23:34:03

这是从this questions那里弄明白的。

当你传递一个customComponent时,你也可以像这样传递customComponentMetadata:

代码语言:javascript
复制
{"columnName": 'dateCreated', "displayName": "Date Created", "visible": true, "order": 4, "customComponent": DateComponent, customComponentMetadata: {
  "dateField": "dateCreated"
}}

然后像这样访问它:

代码语言:javascript
复制
props.metadata.customComponentMetadata.dateField

也就是说,columnName已经作为元数据传入了。因此,虽然我不需要为这个场景传递自定义数据,但我确实需要它来做其他事情。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39960149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档