fix: Fix the value of the name column in the network list which use the simple table
Show id and name to match column headings Change-Id: Ifea9927b024ae613d2db4f402aa4ad020d767c6e
This commit is contained in:
parent
d884b0ba6e
commit
0aaca80308
@ -24,6 +24,8 @@ import {
|
|||||||
checkIsStatusColumn,
|
checkIsStatusColumn,
|
||||||
getStatusRender,
|
getStatusRender,
|
||||||
getRender,
|
getRender,
|
||||||
|
getNameRender,
|
||||||
|
getNameRenderByRouter,
|
||||||
} from 'utils/table';
|
} from 'utils/table';
|
||||||
import { Link } from 'react-router-dom';
|
import { Link } from 'react-router-dom';
|
||||||
import { getNoValue } from 'utils/index';
|
import { getNoValue } from 'utils/index';
|
||||||
@ -80,6 +82,9 @@ export default class SimpleTable extends React.Component {
|
|||||||
isStatus,
|
isStatus,
|
||||||
isName,
|
isName,
|
||||||
isPrice,
|
isPrice,
|
||||||
|
isLink,
|
||||||
|
routeName,
|
||||||
|
linkPrefix,
|
||||||
...rest
|
...rest
|
||||||
} = column;
|
} = column;
|
||||||
if (column.key === 'operation') {
|
if (column.key === 'operation') {
|
||||||
@ -98,8 +103,12 @@ export default class SimpleTable extends React.Component {
|
|||||||
if (dataIndex === 'project_name') {
|
if (dataIndex === 'project_name') {
|
||||||
newRender = this.getProjectRender(newRender);
|
newRender = this.getProjectRender(newRender);
|
||||||
}
|
}
|
||||||
if (dataIndex === 'name' || isName) {
|
if ((dataIndex === 'name' && routeName) || isLink) {
|
||||||
newRender = this.getNameRender(newRender, column);
|
const { rowKey } = this.props;
|
||||||
|
newRender = getNameRenderByRouter(newRender, column, rowKey);
|
||||||
|
}
|
||||||
|
if ((dataIndex === 'name' && linkPrefix) || isName) {
|
||||||
|
newRender = getNameRender(newRender, column);
|
||||||
}
|
}
|
||||||
if (dataIndex === 'cost' || isPrice) {
|
if (dataIndex === 'cost' || isPrice) {
|
||||||
newRender = this.getPriceRender(newRender, column);
|
newRender = this.getPriceRender(newRender, column);
|
||||||
@ -153,38 +162,6 @@ export default class SimpleTable extends React.Component {
|
|||||||
return (value) => getNoValue(value);
|
return (value) => getNoValue(value);
|
||||||
};
|
};
|
||||||
|
|
||||||
getNameRender = (render, column) => {
|
|
||||||
if (render) {
|
|
||||||
return render;
|
|
||||||
}
|
|
||||||
const { linkPrefix, dataIndex, idKey, linkPrefixFunc, linkFunc } = column;
|
|
||||||
const { rowKey } = this.props;
|
|
||||||
return (value, record) => {
|
|
||||||
const idValue = get(record, idKey || rowKey);
|
|
||||||
let url = null;
|
|
||||||
if (linkFunc) {
|
|
||||||
url = linkFunc(value, record);
|
|
||||||
} else {
|
|
||||||
const linkValue = linkPrefixFunc
|
|
||||||
? linkPrefixFunc(value, record)
|
|
||||||
: linkPrefix;
|
|
||||||
url = this.getLinkUrl(linkValue, idValue);
|
|
||||||
}
|
|
||||||
const nameValue = value || get(record, dataIndex) || '-';
|
|
||||||
if (!url) {
|
|
||||||
return nameValue;
|
|
||||||
}
|
|
||||||
return (
|
|
||||||
<div>
|
|
||||||
<div>
|
|
||||||
<Link to={url}>{idValue}</Link>
|
|
||||||
</div>
|
|
||||||
<div>{nameValue}</div>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
getLinkUrl = (prefix, id) => {
|
getLinkUrl = (prefix, id) => {
|
||||||
if (!prefix) {
|
if (!prefix) {
|
||||||
return null;
|
return null;
|
||||||
|
Loading…
Reference in New Issue
Block a user