• 样式模块(style module)
    • Usage

    样式模块(style module)

    一般来说, 在组件内写死(hard code)样式应该是要被避免的.
    这些有可能被不同的UI组件分享的样式应该被分开放入对应的模块中.

    1. // 样式模块
    2. export const white = '#fff';
    3. export const black = '#111';
    4. export const blue = '#07c';
    5. export const colors = {
    6. white,
    7. black,
    8. blue
    9. };
    10. export const space = [
    11. 0,
    12. 8,
    13. 16,
    14. 32,
    15. 64
    16. ];
    17. const styles = {
    18. bold: 600,
    19. space,
    20. colors
    21. };
    22. export default styles

    Usage

    1. // button.jsx
    2. import React from 'react'
    3. import { bold, space, colors } from './styles'
    4. const Button = ({
    5. ...props
    6. }) => {
    7. const sx = {
    8. fontFamily: 'inherit',
    9. fontSize: 'inherit',
    10. fontWeight: bold,
    11. textDecoration: 'none',
    12. display: 'inline-block',
    13. margin: 0,
    14. paddingTop: space[1],
    15. paddingBottom: space[1],
    16. paddingLeft: space[2],
    17. paddingRight: space[2],
    18. border: 0,
    19. color: colors.white,
    20. backgroundColor: colors.blue,
    21. WebkitAppearance: 'none',
    22. MozAppearance: 'none'
    23. };
    24. return (
    25. <button {...props} style={sx}/>
    26. )
    27. };