Ant Design 양식에 색상 선택기 추가
16981 단어 antdtypescriptjavascriptreact
Ant design은 효율적인 사용자 인터페이스 구축을 위한 매우 편리한 디자인 시스템입니다.
작업하는 동안 양식에 색상 선택기를 추가해야 할 필요성에 직면했습니다. 불행히도 그러한 구성 요소는 없습니다.
Antd 문서는 colorpicker를 만들기 위해 타사 라이브러리를 사용할 것을 제안합니다.
결국 나는 나와 같은 문제에 직면하게 될 모든 사람을 위해 npm 패키지를 작성하는 것이 도움이 될 것이라고 결정했습니다.
NPM antd-colorpicker
사용 방법?
패키지를 설치합니다:
npm install antd-colorpicker --save-dev
또는
yarn add -D antd-colorpicker
Colorpicker
내부의 양식에 Form.Item
를 추가합니다.import React from 'react'
import { Button, Form } from 'antd'
import { Colorpicker, ColorPickerValue } from 'antd-colorpicker'
import 'antd/dist/antd.css'
const App = () => {
const initialValues = { color: { r: 26, g: 14, b: 85, a: 1 } }
const handleOnFinish = (values: { color: ColorPickerValue }) => {
console.log(values)
}
return (
<Form onFinish={handleOnFinish} initialValues={initialValues}>
<Form.Item label={'Colorpicker'} name={`color`}>
<Colorpicker />
</Form.Item>
<Form.Item>
<Button type='primary' htmlType='submit'>
Show values in console
</Button>
</Form.Item>
</Form>
)
}
export default App
가장 간단한 색상 선택기가 될 것입니다.
커스터마이징
다음 속성을 사용하여 색상 선택기를 사용자 지정할 수 있습니다.
재산
설명
유형
기본
이쑤시개
피커의 종류
BlockPicker ChromePicker CirclePicker CompactPicker GithubPicker GooglePicker HuePicker MaterialPicker PhotoshopPicker SketchPicker SliderPicker 견본Picker TwitterPicker
스케치 선택기
팝업
colorpicker에 팝업을 사용하십시오. 구성 요소Popover
부울
거짓
onColorResult
반환할 색상 값을 변경하는 함수
기능(색상)
한정되지 않은
블록 스타일
popup=true
인 경우에만 관련이 있습니다. 팝업 창에서 선택한 후 색상을 변경하는 블록용 CSS 스타일CSS속성
{ }
popoverProps
Popover
구성 요소의 속성object
{ }
...쉬다
반응 색상 선택기의 사용자 지정 속성
props
예
팝업창
<Colorpicker popup />
팝업 창을 실행하는 변경 블록
<Colorpicker
popup
blockStyles={{
width: '30px',
height: '30px',
borderRadius: '50%',
}}
/>
13가지 유형의 피커 중 하나를 선택하십시오.
다음 중 하나를 사용할 수 있습니다.
BlockPicker
| ChromePicker
| CirclePicker
| CompactPicker
| GithubPicker
| GooglePicker
| HuePicker
| MaterialPicker
| PhotoshopPicker
| SketchPicker
| SliderPicker
| SwatchesPicker
| TwitterPicker
<Colorpicker picker={'CirclePicker'} />
색상의 결과 값 사용자 정의
기본적으로 다음과 같은 색상 결과가 나타납니다.
{
"hsl": {
"h": 250.3448275862069,
"s": 0.1594202898550725,
"l": 0.346725,
"a": 1
},
"hex": "#4f4a67",
"rgb": {
"r": 79,
"g": 74,
"b": 103,
"a": 1
},
"hsv": {
"h": 250.3448275862069,
"s": 0.2750000000000001,
"v": 0.402,
"a": 1
},
"oldHue": 250.3448275862069,
"source": "hsv"
}
원하는 것을 얻기 위해 변경해 봅시다.
<Colorpicker onColorResult={(color) => color.rgb} />
결과 값은 다음과 같습니다.
{
"r": 79,
"g": 74,
"b": 103,
"a": 1
}
양식 외부에서 구성 요소를 사용하는 방법은 무엇입니까?
value
및 onChange
(또는 onChangeComplete
) 소품을 정의해야 합니다.구성 요소는 다음과 같습니다.
import React, { useState } from 'react'
import { AnyColorFormat, Colorpicker } from 'antd-colorpicker'
const App = () => {
const [color, setColor] = useState<AnyColorFormat>({
r: 0,
g: 0,
b: 0,
a: 0.5,
})
const onChange = (color: AnyColorFormat) => {
setColor(color)
}
return (
<div
style={{ maxWidth: '500px', margin: '20px auto', paddingBottom: '50px' }}
>
<Colorpicker value={color} onChange={onChange} />
</div>
)
}
export default App
이거 야! 즐기다!
Reference
이 문제에 관하여(Ant Design 양식에 색상 선택기 추가), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/igaponov/add-colorpicker-to-ant-design-form-15l6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)