드롭 다운 옵션 메뉴 안에 입력 상자가 필요한 상황에 처해 있습니다. 시나리오에서 드롭 다운으로 새 옵션을 만들어야하지만 react select의 사용자 정의 태그 작성자 기능을 사용할 수 없습니다.반응 선택 드롭 다운 메뉴에서 입력 상자가 필요합니다.
사용자 지정 옵션 렌더러 구성 요소를 전달할 수있는 문서에서 찾았으며 동일한 옵션을 전달했으며 입력 상자를 내 옵션 구성 요소 안에 넣으려고하면 입력 상자를 제어 할 수 없습니다.
첨부 된 그림은 내 옵션 내부의 입력을 표시하지만 입력 상자를 클릭하면 내가 그 위에 통제를 받고 있지 않다.
내 DeleteComponent.tsx ->
import { showDeleteConcernModal } from '../../../actions/modalActions';
import { deleteConcernType } from '../../../actions/summaryActions';
import { ISelectOptions } from '../../../interfaces';
import * as React from 'react';
import { FormControl } from 'react-bootstrap';
export interface IDeleteOptionsProps {
className?: string;
isDisabled?: boolean;
isFocused?: boolean;
isSelected?: boolean;
onFocus?: Function;
onSelect?: Function;
option?: ISelectOptions;
}
export class DeleteOptions extends React.PureComponent<IDeleteOptionsProps, {}> {
constructor() {
super();
}
handleMouseDown = (event) => {
event.preventDefault();
this.props.onSelect(this.props.option, event);
}
handleMouseEnter = (event) => {
event.preventDefault();
this.props.onFocus(this.props.option, event);
}
handleMouseMove = (event) => {
event.preventDefault();
this.props.onFocus(this.props.option, event);
}
handleOptionDelete = (value) => {
showDeleteConcernModal('oi-form', value);
}
handleChange = (event) => {
console.log('>> event.target.value', event.target.value);
}
render() {
return (
<div className={this.props.className}
onMouseEnter={this.handleMouseEnter}
onMouseMove={this.handleMouseMove}
>
<div style={{ textAlign: 'left', width: '80%', display: 'inline-block' }}>
<FormControl
type="text"
onChange={this.handleChange}
/>
</div>
<div
onMouseDown={() => { this.handleOptionDelete(this.props.children); }}
className="delete-option"
style={{ textAlign: 'right', width: '20%', display: 'inline-block' }}
>
<i className="fa fa-times" aria-hidden="true"></i>
</div>
</div>
);
}
}
에서 사용자 정의 태그를 생성합니다. 그러나 나는 이것을 사용할 수 없다. 마지막 옵션으로 내 옵션 드롭 다운 안에 입력 상자가 필요하다. –
오케이. 당신이 알고 있다면 왜이 creatable 태그를 사용하지 않는 것입니까? 이것은이를 해결하는 가장 쉬운 방법입니다. –
이러한 종류의 입력에 대한 요구가 있기 때문에 –