使用 material-table 库时如何更改删除过滤器图标?
How can I change remove the filter icon when using the material-table library?
我想删除过滤器图标,只留下空白的输入框。我试过使用列属性 filterCellStyle 但无法访问图标,因为它是内联样式。
import React, { Children } from "react";
import ReactDOM from "react-dom";
import MaterialTable from 'material-table';
class Example extends React.Component {
render() {
return (
<MaterialTable
title="Non Filtering Field Preview"
columns={[
{ title: 'Name', field: 'name', filterCellStyle: {
background: "red"
}},
{ title: 'Surname', field: 'surname' },
{ title: 'Birth Year', field: 'birthYear', type: 'numeric' },
{
title: 'Birth Place',
field: 'birthCity',
lookup: { 34: 'İstanbul', 63: 'Şanlıurfa' },
},
]}
data={[
{ name: 'Mehmet', surname: 'Baran', birthYear: 1987, birthCity: 63 },
{ name: 'Zerya Betül', surname: 'Baran', birthYear: 2017, birthCity: 34 },
]}
options={{
filtering: true
}}
/>
)
}
}
const rootElement = document.getElementById("root");
ReactDOM.render(<Example />, rootElement);
显然你可以使用 icons 属性来删除任何图标并将一个空的 div 元素传递给图标:
import React, { Children } from "react";
import ReactDOM from "react-dom";
import MaterialTable from 'material-table';
class Example extends React.Component {
render() {
return (
<MaterialTable
icons={{ Filter: () => <div /> }} // <== this solves it
title="Non Filtering Field Preview"
columns={[
{ title: 'Name', field: 'name', filterCellStyle: {
background: "red"
}},
{ title: 'Surname', field: 'surname' },
{ title: 'Birth Year', field: 'birthYear', type: 'numeric' },
{
title: 'Birth Place',
field: 'birthCity',
lookup: { 34: 'İstanbul', 63: 'Şanlıurfa' },
},
]}
data={[
{ name: 'Mehmet', surname: 'Baran', birthYear: 1987, birthCity: 63 },
{ name: 'Zerya Betül', surname: 'Baran', birthYear: 2017, birthCity: 34 },
]}
options={{
filtering: true
}}
/>
)
}
}
我想删除过滤器图标,只留下空白的输入框。我试过使用列属性 filterCellStyle 但无法访问图标,因为它是内联样式。
import React, { Children } from "react";
import ReactDOM from "react-dom";
import MaterialTable from 'material-table';
class Example extends React.Component {
render() {
return (
<MaterialTable
title="Non Filtering Field Preview"
columns={[
{ title: 'Name', field: 'name', filterCellStyle: {
background: "red"
}},
{ title: 'Surname', field: 'surname' },
{ title: 'Birth Year', field: 'birthYear', type: 'numeric' },
{
title: 'Birth Place',
field: 'birthCity',
lookup: { 34: 'İstanbul', 63: 'Şanlıurfa' },
},
]}
data={[
{ name: 'Mehmet', surname: 'Baran', birthYear: 1987, birthCity: 63 },
{ name: 'Zerya Betül', surname: 'Baran', birthYear: 2017, birthCity: 34 },
]}
options={{
filtering: true
}}
/>
)
}
}
const rootElement = document.getElementById("root");
ReactDOM.render(<Example />, rootElement);
显然你可以使用 icons 属性来删除任何图标并将一个空的 div 元素传递给图标:
import React, { Children } from "react";
import ReactDOM from "react-dom";
import MaterialTable from 'material-table';
class Example extends React.Component {
render() {
return (
<MaterialTable
icons={{ Filter: () => <div /> }} // <== this solves it
title="Non Filtering Field Preview"
columns={[
{ title: 'Name', field: 'name', filterCellStyle: {
background: "red"
}},
{ title: 'Surname', field: 'surname' },
{ title: 'Birth Year', field: 'birthYear', type: 'numeric' },
{
title: 'Birth Place',
field: 'birthCity',
lookup: { 34: 'İstanbul', 63: 'Şanlıurfa' },
},
]}
data={[
{ name: 'Mehmet', surname: 'Baran', birthYear: 1987, birthCity: 63 },
{ name: 'Zerya Betül', surname: 'Baran', birthYear: 2017, birthCity: 34 },
]}
options={{
filtering: true
}}
/>
)
}
}