реагировать родной календарь отключить сенсорное событие по воскресеньям - PullRequest
1 голос
/ 20 мая 2019

Привет, я новичок в реагировании на родной. Я пытаюсь отключить воскресенья и все даты до сегодняшнего дня. Я использую реагирующие нативные календари. Мне удалось отключить все воскресенья, но сенсорное событие все еще работает, пожалуйста, помогите?

here's the code to disable sundays
import React, {Component} from 'react';
import { isSunday } from "date-fns";
import Day from "react-native-calendars/src/calendar/day/basic";

export class CustomDay extends Component {
  render() {
    const { date, marking } = this.props;
    marking.disabled = isSunday(date.timestamp);
    return <Day {...this.props} />;
  }
}
<Calendar
  dayComponent={props => {
    return <CustomDay {...props} />;
  }}
/>
````

1 Ответ

1 голос
/ 20 мая 2019

Не могли бы вы попробовать это?

react-native-calendars имеет набор событий по умолчанию.Однако значения true и false не указываются, если значение равно disabled.

import React, {Component} from 'react';
import { isSunday } from "date-fns";
import Day from "react-native-calendars/src/calendar/day/basic";

export class CustomDay extends Component {
  render() {
    const { date, marking } = this.props;
    marking.disabled = isSunday(date.timestamp);
     marking.disableTouchEvent = marking.disabled === true ? true : false
    return <Day {...this.props} />;
  }
}

ссылка на ссылку

Определение Day

 <TouchableOpacity
        testID={this.props.testID}
        style={containerStyle}
        onPress={this.onDayPress}
        onLongPress={this.onDayLongPress}
        activeOpacity={marking.activeOpacity}
        disabled={marking.disableTouchEvent}
      >
        <Text allowFontScaling={false} style={textStyle}>{String(this.props.children)}</Text>
        {dot}
      </TouchableOpacity>
...