[英]How to render activeClassName style for a react-router-dom NavLink rendered within a material-ui button in a typescript environment?
[英]react-router-dom: pass a variable with css to NavLink's activeStyle prop? (Emotion)
使用 react-router-dom 的 Navlink 的activeStyle
属性时,如何将 styles 提取到变量中,这样我就不必一遍又一遍地重复相同的 styles 而不使用 ZC7A628CBA22E28EB616AZF 文件?
理想情况下,我想用Emotion
来做到这一点(而不只是做一个styled.Navlink ),但如果这不可能,一个常规变量也可以。
我的文件如下所示:
import { NavLink, useRouteMatch } from 'react-router-dom';
import { css } from '@emotion/react';
const navLinkStyle = css({
color: blue,
});
const navLinkActiveStyle = { // also tried css({ ... })
color: 'red',
};
使用以下元素:
<NavLink
to='/home'
// activeClassName='selected' // I imagine this is for pure css styling, not css-in-js.
css={navLinkStyle} // Emotion css prop
activeStyle={navLinkActiveStyle} // Does not seem to accept any variable (emotion's or regular)
>
Home
</NavLink>
您可以将所有 styles 分配给 object。
const navLinkStyle = {
color: 'blue',
backgroundColor:'green',
...etc
};
并像这样使用这个 object
<NavLink
to='/home'
activeStyle={navLinkStyle}
>
Home
</NavLink>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.