# Component/Button/Button
> Props: component-button-button.props.txt
## Examples
### As Child
```tsx
{
render: () => {
return
;
}
}
```
### Black
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
const outlined_kind = `outlined_${args.kind}` as ButtonOutlinedKind;
return (
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
);
},
args: {
kind: 'black',
size: 'medium',
children: '버튼'
}
}
```
### Disabled
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '버튼',
endIcon:
}
}
```
### Disabled With Color
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '버튼',
endIcon:
}
}
```
### End Icon
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '버튼',
endIcon:
}
}
```
### End Icon With Color
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '버튼',
endIcon:
}
}
```
### Focus
```tsx
{
render: () => {
const ref = useRef(null);
useEffect(() => {
ref.current?.focus();
}, [ref.current]);
return <>
키보드 Tab키를 눌러서 포커스를 옮겨볼 수 있어요!
>;
}
}
```
### Full Width
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
{button_size_keys.map((key) => (
))}
);
},
args: {
children: '버튼',
fill: true,
kind: 'primary'
}
}
```
### Loading
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '엑셀 다운로드',
loading: true,
startIcon: ,
endIcon:
}
}
```
### Negative
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
const outlined_kind = `outlined_${args.kind}` as ButtonOutlinedKind;
return (
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
);
},
args: {
kind: 'negative',
size: 'medium',
children: '버튼',
onClick: () => alert('clicked')
}
}
```
### Primary
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
const outlined_kind = `outlined_${args.kind}` as ButtonOutlinedKind;
return (
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
);
},
args: {
kind: 'primary',
size: 'medium',
children: '버튼'
}
}
```
### Secondary
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
const outlined_kind = `outlined_${args.kind}` as ButtonOutlinedKind;
return (
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
{key}
))}
{button_size_keys.map((key) => (
))}
);
},
args: {
kind: 'secondary',
size: 'medium',
children: '버튼'
}
}
```
### Start Icon
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '버튼',
startIcon:
}
}
```
### Start Icon With Color
```tsx
{
render: (args) => {
const button_size_keys = reverse(Object.keys(button_size_css));
return (
<>
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
{button_size_keys.map((key) => (
))}
>
);
},
args: {
children: '버튼',
startIcon:
}
}
```