码迷,mamicode.com
首页 > Web开发 > 详细

[TypeStyle] Compose CSS classes using TypeStyle

时间:2017-06-06 15:00:46      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:ons   classes   sum   app   recommend   ack   ring   als   doc   

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‘)
);

 

[TypeStyle] Compose CSS classes using TypeStyle

标签:ons   classes   sum   app   recommend   ack   ring   als   doc   

原文地址:http://www.cnblogs.com/Answer1215/p/6951531.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!