按钮
安装
按钮组件包含在 @cypress-design/react-button 软件包。 你也想安装 @cypress-design/constants-button 以获取 TypeScript 的适当类型.
npm install @cypress-design/react-button @cypress-design/constants-button
或者用纱线
yarn add @cypress-design/react-button @cypress-design/constants-button
使用量
import Button from '@cypress-design/react-button'
import { IconActionPower } from '@cypress-design/react-icon'
import Button from '@cypress-design/react-button'
export default () => (
<Button>
<IconActionPower className="mr-2" />
Button
</Button>
)
平方按钮
import { IconActionPower } from '@cypress-design/react-icon'
import Button from '@cypress-design/react-button'
export default () => (
<div className="flex items-center gap-4">
{[20, 24, 32, 40, 48].map((size) => (
<Button key={size} size={size} square>
<IconActionPower
style={{ width: `${size / 2}px`, height: `${size / 2}px` }}
/>
</Button>
))}
</div>
)
可能的变体
变体及其可用的大小加样式 disabled 设置为 true (代为).
import {
default as Button,
VariantClassesTable,
SizeClassesTable,
} from '@cypress-design/react-button'
export default () => {
const darkModeVariants = [
'outline-dark',
'outline-red-dark-mode',
'outline-jade-dark-mode',
'outline-indigo-dark-mode',
'outline-purple-dark-mode',
'red-dark-mode',
'purple-dark-mode',
'indigo-dark-mode',
'disabled-dark-mode',
]
return (
<div className="flex flex-wrap justify-stretch gap-[8px]">
{Object.keys(VariantClassesTable).map((variant) => (
<div
key={variant}
className="flex min-w-[180px] flex-col items-center gap-[16px] rounded px-[8px] py-[12px]"
style={{
backgroundColor: darkModeVariants.includes(variant)
? '#1a202c'
: 'white',
color: darkModeVariants.includes(variant) ? 'white' : 'black',
}}
>
{variant}
{Object.keys(SizeClassesTable).map((size) => (
<div key={size} className="flex items-center gap-[8px]">
{size}
<Button variant={variant} size={size}>
Button
</Button>
</div>
))}
<div key={variant} className="flex items-center gap-[8px]">
🚫
<Button variant={variant} size="48" disabled>
Button
</Button>
</div>
</div>
))}
</div>
)
}