message: fix(Select): options will be overwritten due to seState
diff: @@ -641,13 +641,15 @@ const Select = ({
  useEffect(() => {
  if (selectValue) {
  + setSelectOptions(selectOptions => {
  const array = Array.isArray(selectValue)
  ? (selectValue as AntdLabeledValue[])
  : [selectValue as AntdLabeledValue | string | number];
  const options: AntdLabeledValue[] = [];
  const isLabeledValue = isAsync || labelInValue;
  array.forEach(element => {
  - const found = selectOptions.find((option: { value: string | number }) =>
  + const found = selectOptions.find(
  + (option: { value: string | number }) =>
  isLabeledValue
  ? option.value === (element as AntdLabeledValue).value
  : option.value === element,
  @@ -661,10 +663,13 @@ const Select = ({
  }
  });
  if (options.length > 0) {
  - setSelectOptions([...options, ...selectOptions]);
  + return [...options, ...selectOptions];
  }
  + // return same options won't trigger a re-render
  + return selectOptions;
  + });
  }
  - }, [labelInValue, isAsync, selectOptions, selectValue]);
  + }, [labelInValue, isAsync, selectValue]);
  // Stop the invocation of the debounced function after unmounting
  useEffect(() => () => handleOnSearch.cancel(), [handleOnSearch]);
  