henninghall / react-native-date-picker

React Native Date Picker is datetime picker for Android and iOS. It includes date, time and datetime picker modes. The datepicker is customizable and is supporting different languages. It's written with native code to achieve the best possible look, feel and performance.
MIT License
2.14k stars 326 forks source link

Wrong time selected on samsung phone #818

Open milkmouth opened 1 month ago

milkmouth commented 1 month ago

Describe the bug Selected 00:00, received 23:54

Update: The value displayed by the selector is inconsistent with the value received by onConfirm

https://github.com/henninghall/react-native-date-picker/assets/17698980/91d0e996-47ea-4a70-8dbd-f4e1de110b81

Expected behavior Select 00:00, receive 00:00

To Reproduce

import moment from 'moment';
import DatePicker from 'react-native-date-picker';
export default class App extends Component {

  const [timeToPickerOpen, setTimeToPickerOpen] = useState(false);
  const [timeFrom, setTimeFrom] = useState(new Date(moment().endOf('day').format('YYYY-MM-DD HH:mm:ss')));
  const [isEn, setIsEn] = useState(false);

  render = () =>
    <DatePicker
      modal
      open={timeFromPickerOpen}
      date={timeFrom}
      mode="time"
      locale={isEn ? 'zh-Hant' : 'en'}
      title={null}
      confirmText={'CONFIRM'}
      cancelText={'CANCEL'}
      onConfirm={timeFrom => {
        setTimeFromPickerOpen(!timeFromPickerOpen);
        setTimeFrom(timeFrom);
        alert(timeFrom)
      }}
      onCancel={() => {
        setTimeFromPickerOpen(!timeFromPickerOpen);
      }}
    />

}

Smartphone (please complete the following information):