zoukankan      html  css  js  c++  java
  • [TypeStyle] Compose CSS classes using TypeStyle

    We will demonstrate composing classes using the utility classes function. classes is also what we recommend for theming. Using pure CSS classes means that the component consumers are free to customize the component using any technology (not just TypeStyle). classes is also what is recommended for conditionally applied TypeStyle CSS class names.

    import { style, classes } from 'typestyle';
    import * as React from 'react';
    import * as ReactDOM from 'react-dom';
    
    const fontSize = (value: number | string) => {
        const valueStr = typeof value === 'string' ?
            value :
            value + 'px';
        return {
            fontSize: valueStr
        }
    };
    const baseClassName = style(
        {
            color: 'green',
        },
        fontSize(15)
    );
    const errorClassName = style({
            color: 'red'
        },
        fontSize(12)
    );
    
    
    const Section = ({children, hasError, className}: {
        children?: any, hasError?: boolean, className?: string
    }) => (
        <div className={classes(
            baseClassName,
            className,
            hasError && errorClassName
        )}>
            {children}
        </div>
    );
    
    const App = () => (
        <div>
            <Section className={style({backgroundColor: 'pink'})}>Success</Section>
            <Section className={style({backgroundColor: 'yellow'})} hasError={true}>Error</Section>
        </div>
    
    );
    
    ReactDOM.render(
        <App />,
        document.getElementById('root')
    );
  • 相关阅读:
    mysql 从库执行insert失败导致同步停止
    MySQL 占用cpu 100%
    MySQl 主从配置实战
    tomcat 线程数与 mysql 连接数综合调优
    mysql 数据迁移
    Windows系统上设置 Git Bash 的 Font 及 Locale
    java -jar 使用要点
    ConcurrentHashMap 从Java7 到 Java8的改变
    sql索引组织
    注册、启动、停止windows服务
  • 原文地址:https://www.cnblogs.com/Answer1215/p/6951531.html
Copyright © 2011-2022 走看看