hensei-web/src/components/Button/Button.tsx
2020-09-17 16:53:24 -07:00

36 lines
No EOL
923 B
TypeScript

import React from 'react'
import './Button.css'
import New from '../../../assets/new'
import Menu from '../../../assets/menu'
import Link from '../../../assets/link'
interface Props {
type: string | null
click: () => void
}
class Button extends React.Component<Props> {
static defaultProps: Props = {
type: null,
click: () => {}
}
render() {
let icon
if (this.props.type === 'new') {
icon = <span className='icon'><New /></span>
} else if (this.props.type === 'menu') {
icon = <span className='icon'><Menu /></span>
} else if (this.props.type === 'link') {
icon = <span className='icon'><Link /></span>
}
return <button className='Button' onClick={this.props.click}>
{icon}
<span className='text'>{this.props.children}</span>
</button>
}
}
export default Button