React组件库实践:React + Typescript + Less + Rollup + Storybook
    		       		warning:
    		            这篇文章距离上次修改已过439天,其中的内容可能已经有所变动。
    		        
        		                
                
// 假设我们有一个React组件库,并且我们想要创建一个新的按钮组件
import React from 'react';
import PropTypes from 'prop-types';
import styled from 'styled-components';
 
// 使用styled-components来定义按钮样式
const StyledButton = styled.button`
  background-color: ${({ primary }) => (primary ? '#007bff' : '#00ff00')};
  color: ${({ primary }) => (primary ? '#fff' : '#000')};
  padding: 10px 20px;
  font-size: 16px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
 
  &:hover {
    background-color: ${({ primary }) => (primary ? '#0056b3' : '#008000')};
  }
`;
 
// 按钮组件
const Button = ({ primary, onClick, label }) => {
  return <StyledButton primary={primary} onClick={onClick}>{label}</StyledButton>;
};
 
Button.propTypes = {
  primary: PropTypes.bool,
  onClick: PropTypes.func,
  label: PropTypes.string
};
 
Button.defaultProps = {
  primary: false,
  onClick: () => {},
  label: 'Click me'
};
 
export default Button;这个代码实例展示了如何创建一个React组件,使用了styled-components来定义组件样式,并且使用prop-types来确保属性类型的正确性。这个组件可以被其他React应用导入并使用,提高了用户界面的一致性和可维护性。
评论已关闭