2016-03-05 15 views
5

मैं आयनिक के लिए नया हूं और मैं आयनिक 2 बीटा के साथ खेल रहा हूं। मैं in the documentation जैसे कॉर्डोवा प्लगइन का उपयोग कर देशी डेटपिकर को कार्यान्वित करने की कोशिश कर रहा हूं।आयनिक 2 डेटपिकर

मैंने पूरी तरह से कॉपी/पेस्ट किया है, और मुझे नेक्सस 5 एमुलेटर और आर्कोस एंड्रॉइड फोन पर "ReferenceError: DatePicker is not defined मिल गया है।

openDatePicker() { 
    var options = { 
     date: new Date(), 
     mode: 'date' 
    }; 

    function onSuccess(date) { 
     alert('Selected date: ' + date); 
    } 

    function onError(error) { // Android only 
     alert('Error: ' + error); 
    } 

    DatePicker.show(options, onSuccess, onError); 
    } 

मैं एक बहुत खोज की है और इस बारे में कुछ भी नहीं मिला है, शायद मैं गलत यह आयोनिक 2 पर कॉर्डोबा प्लगइन के साथ कर रहा हूँ है?

+0

हाय @ MoKAt आप सटीक समाधान पता करने के लिए कोड के HTML हिस्सा प्रदान करें कर सकते हैं, अब मैं आयनिक 2 दिनांक पिकर करने के लिए कोशिश कर रहा हूँ, मैं कई मायनों की कोशिश की है यह उपयोगी नहीं है मेरे लिए, तो क्या आप इसके लिए मदद कर सकते हैं? .... धन्यवाद ... –

+0

मुझे नहीं लगता कि मेरे पास अभी भी वह कोड है, लेकिन उत्तर (और दस्तावेज) सभी आवश्यक सूचनाएं दे रहा है क्योंकि मैंने इसे बनाया है इसके साथ काम करो। – MokaT

उत्तर

7

इस पर प्रलेखन की कमी है (इस प्रश्न के समय आयनिक मूल दस्तावेज अभी भी बहुत अधिक डब्ल्यूआईपी हैं)।

ionic-native ढांचे से एक अलग मॉड्यूल है, तो आप इसे स्थापित करने की आवश्यकता होगी:

# from within your project directory 
npm install --save ionic-native 

तुम भी आप अगर आप पहले से ही नहीं है का उपयोग करने के प्रयास कर रहे हैं प्लगइन स्थापित करने की आवश्यकता होगी :

#from within your project directory 
ionic plugin add cordova-plugin-datepicker 

फिर अपने कोड में DatePicker प्लगइन आयात:

import {DatePicker} from 'ionic-native'; 

और फिर आयनिक 1 के समान ही आप कॉर्डोवा तैयार होने तक किसी भी प्लगइन का उपयोग नहीं कर पाएंगे। इसका मतलब है आप Platform.ready उपयोग कर सकते हैं या deviceready घटना के लिए window पर गोली चलाने के लिए इंतजार:

constructor(platform: Platform) { 
    platform.ready().then(() => { 
    let options = { 
     date: new Date(), 
     mode: 'date' 
    } 

    DatePicker.show(options).then(
     date => { 
     alert('Selected date: ' + date); 
     }, 
     error => { 
     alert('Error: ' + error); 
     } 
    ); 
    }); 
} 

यह भी ध्यान रखें करने के लिए एक बात यह है कि ionic-native एक वादा में कॉलबैक लपेटता है।

+1

इस अच्छे उत्तर के लिए धन्यवाद, लेकिन मुझे अभी भी परेशानी हो रही है, मैंने आयनिक-मूल (और निर्भरता के कारण आरएक्सजे) स्थापित किया है, मुझे फ़ोल्डर को node_modules में मिला है, और इसका संकुल पैकेज.जेसन में है, लेकिन निर्माण है असफल 'मॉड्यूल को हल नहीं कर सकता' ionic-native'' – MokaT

+2

अंतिम रिलीज खराब थी, अब अपडेट करने का प्रयास करें: 'npm इंस्टॉल करें ionic-native' – user1234

+0

यह काम करता है! आपका बहुत बहुत धन्यवाद ! फास्ट अपडेट मैं प्रभावित हूं :) – MokaT

0

इस प्रयास करें:

step 1: npm install @ionic-native/core --save 
step 2: npm install --save @ionic-native/date-picker 
step 3: add this plugin to your app.module.ts 
      i. import { DatePicker } from '@ionic-native/date-picker'; 
     ii. providers:[DatePicker] 
step 4: import { DatePicker } from '@ionic-native/date-picker'; 
step 5: Inject in constructor: 
     constructor(public datePicker: DatePicker) { } 
step 6: You can access datePicker like: 
     this.datePicker.show({ 
     date: new Date(), 
      mode: 'date', 
      androidTheme: this.datePicker.ANDROID_THEMES.THEME_HOLO_DARK 
     }).then(
      date => console.log('Date: ', date), 
      err => console.log('Error while getting date: ', err) 
     ); 
संबंधित मुद्दे