8

में दिनांक चयन को प्रतिबंधित करने के लिए कैसे मैं उपयोगकर्ताओं को प्रतिक्रियात्मक देशी आईओएस/एंड्रॉइड डेट पिकर्स में व्यावसायिक तर्क के आधार पर विशेष तिथियों को चुनने से प्रतिबंधित करना चाहता हूं। वर्तमान में दस्तावेज़ में मैं केवल देखता हूं कि एक न्यूनतम तिथि और अधिकतम तिथि प्रदान की जा सकती है। तो क्या एक महीने के केवल 5 (6, 10, 12, 18) कहने के लिए एक तरीका है? एक इन तिथियों सिर्फ एक उदाहरण के एक मामले से स्थितिप्रतिक्रिया मूल आईओएस/एंडोर्ड डेटपिकर

+0

डिफ़ॉल्ट मूल आईओएस/एंड्रॉइड डेटपिकर के साथ यह संभव नहीं है और आपको अपने लिए एक कस्टम पिकर बनाने की आवश्यकता है। –

उत्तर

5

को बदल जाएगा आईओएस उदाहरण

<DatePickerIOS 
 
     date={this.state.chosenDate} 
 
     onDateChange={(date) => { 
 
     if(isAllowedDate(date)) { 
 
      this.setState({chosenDate: newDate}) 
 
     } 
 
     else { 
 
      this.setState({error:'you can not select this date ...'}) 
 
     } 
 

 
     }} 
 
    />

+0

हाय @ सैम अगर इस या किसी भी उत्तर ने आपके प्रश्न को हल किया है तो कृपया चेक-मार्क पर क्लिक करके [इसे स्वीकार कर लें] (https://meta.stackexchange.com/q/5234/179419) पर विचार करें। यह व्यापक समुदाय को इंगित करता है कि आपको समाधान मिला है और उत्तर-एआर और स्वयं दोनों को कुछ प्रतिष्ठा देता है। ऐसा करने का कोई दायित्व नहीं है। – chridam

1

उपयोग iOS और Android के लिए react-native-datepicker मॉड्यूल के लिए कर रहे हैं, सेट करें:

नोट यह जांचने के लिए कि क्या तारीख वैध है या

render(){ 
    return(
     ... 
     <DatePicker 
      mode="date" 
      placeholder="select date" 
      format="YYYY-MM-DD" 
      onDateChange={this.saveDateIfValid} 
     /> 
     ... 
    ) 
} 


saveDateIfValid = (date) => 
{ 
    if(date){ 
     let dateArray = data.split("-"); 
     let validDays = [5,6,10,12,18]; 
     let selectedDay = parseInt(dataArray[2]); 
     if(validDays.indexOf(selectedDay) > -1){ 
      //date is valid 
      this.setState({date : date}); 
      return;  //end the method 
     } 
    } 

    //not valid 
    this.setState({date : null}); 
} 
संबंधित मुद्दे