Material ui 将特定类设置为材质UI组件

Material ui 将特定类设置为材质UI组件,material-ui,Material Ui,我有一个来自Material UI的链接组件。 我列出了这些链接组件,并想为它们设置一个非常特定的类,但它们似乎总是会添加一些额外的组件 import React from "react"; import { Link as RouterLink } from "react-router-dom"; import { Link } from "@material-ui/core"; interface Props { to: string; children: React.ReactN

我有一个来自Material UI的链接组件。 我列出了这些链接组件,并想为它们设置一个非常特定的
,但它们似乎总是会添加一些额外的组件

import React from "react";
import { Link as RouterLink } from "react-router-dom";
import { Link } from "@material-ui/core";

interface Props {
  to: string;
  children: React.ReactNode | string;
}

const LocalLink: React.FC<Props> = ({ to, children}) => (
  <Link to={to} component={RouterLink} className="MuiButtonBase-root MuiListItem-root MuiListItem-gutters MuiListItem-button"}>
    {children}
  </Link>
);

export default LocalLink;
从“React”导入React;
从“react router dom”导入{Link as RouterLink};
从“@material ui/core”导入{Link}”;
界面道具{
到:字符串;
子项:React.ReactNode |字符串;
}
const LocalLink:React.FC=({to,children})=>(
{儿童}
);
导出默认本地链接;
但是,生成的锚元素具有以下类

<a class="MuiTypography-root MuiLink-root MuiLink-underlineHover MuiButtonBase-root MuiListItem-root MuiListItem-gutters MuiListItem-button MuiTypography-colorPrimary" href="/">

因此,您可以看到额外的“MuiTypography根”、“MuiLink根”、“MuiLink underlineHover”和“MuiTypography colorPrimary”。 我猜链接组件添加了这些,但如何防止这种情况


此外,我设置的类名被传递给锚元素的第一个子元素。

当我将组件制作成处理内部和外部链接时,这对我来说很有用

// import both Link components

import { Link } from "@material-ui/core";
import { Link as RouterLink } from "react-router-dom";
然后在组件内部,这是我用来从
react router dom

// wrap RouterLink with Material UI link and add Mui classes to className

  <Link >
    <RouterLink className="MuiTypography-root MuiLink-root MuiLink-underlineHover  MuiListItem-root MuiListItem-gutters MuiTypography-colorPrimary" to={to}>{value}</RouterLink>
  </Link> 
//使用Material UI链接包装RouterLink,并将Mui类添加到className
{value}

当我制作了一个组件来处理内部和外部链接时,这对我来说很有效

// import both Link components

import { Link } from "@material-ui/core";
import { Link as RouterLink } from "react-router-dom";
然后在组件内部,这是我用来从
react router dom

// wrap RouterLink with Material UI link and add Mui classes to className

  <Link >
    <RouterLink className="MuiTypography-root MuiLink-root MuiLink-underlineHover  MuiListItem-root MuiListItem-gutters MuiTypography-colorPrimary" to={to}>{value}</RouterLink>
  </Link> 
//使用Material UI链接包装RouterLink,并将Mui类添加到className
{value}

谢谢您的时间和帮助,但我几个月前就已经切换到Ant Design,而且没有回头看。我有同样的感觉,想切换到其他东西。但愿我们有时间。谢谢Ant Design看起来真的很不错。谢谢你的时间和帮助,但是我几个月前就换成了Ant Design,而且没有回头看。我有同样的感觉,想换成别的东西。但愿我们有时间。谢谢,蚂蚁的设计看起来真不错。