2016-11-24 22 views
0

我在我的項目中安裝了plugin Date PickerIonic 2,日期選擇器(科爾多瓦插件)。屬性'ANDROID_THEMES'在'typeof DatePicker'上不存在'

在一個部件至極具有import { DataPicker } from 'ionic-native'頂部,如果我使用它像(與androidTheme參數評論)它的工作原理

let options = { 
     date: new Date(), 
     mode: 'date', 
     // androidTheme: DatePicker.ANDROID_THEMES.THEME_HOLO_LIGHT 
    }; 

    DatePicker.show(options).then(
     (date) => { 
     console.log('date_value:' + date) 
    }).catch((error) => { }); 

如果我取消androidTheme:DatePicker.ANDROID_THEMES.THEME_HOLO_LIGHT,它將在建設過程中投擲中的bug :

住宅 'ANDROID_THEMES' 不上型 '的typeof的DatePicker'

01存在

我在我的項目文件夾中的CLI中做了npm install ionic-native作爲advised here,但它沒有解決問題。它給了我下面的輸出(即似乎沒給我):

` - [email protected]

NPM WARN可選跳失敗可選的依賴/ chokidar/fsevents:

NPM WARN notsup不與您的操作系統或架構兼容:[email protected]

當我看着[my project]\plugins\cordova-plugin-datepicker\www下,它包含對應於3個平臺(IOS,安卓,窗戶),每一個JS文件3個文件夾命名「DatePicker.js」,並在下面的Andr ?? oid文件夾中的一個包含代碼:

/** 
* Android themes 
*/ 
DatePicker.prototype.ANDROID_THEMES = { 
    THEME_TRADITIONAL   : 1, // default 
    THEME_HOLO_DARK   : 2, 
    THEME_HOLO_LIGHT   : 3, 
    THEME_DEVICE_DEFAULT_DARK : 4, 
    THEME_DEVICE_DEFAULT_LIGHT : 5 
}; 

如果我看在[my project]\nodes_modules\ionic-native\dist\plugins\,文件datepicker.js存在(當然),但不包含每個平臺的特殊性。

怎麼了?爲什麼datepicker.js下的[my project]\nodes_modules\ionic-native\dist\plugins\不包含每個平臺的特殊性,儘管插件已添加到項目中?

回答

1

我發現周圍的工作吧:

[我的項目] \ nodes_modules \離子本地\ DIST \插件[機器人| IOS |窗] \ datepicker.js

在代碼的端上所記:

var datePicker = new DatePicker(); 
module.exports = datePicker; 

// Make plugin work under window.plugins 
if (!window.plugins) { 
    window.plugins = {}; 
} 
if (!window.plugins.datePicker) { 
    window.plugins.datePicker = datePicker; 
} 

因此,它使日期選擇器(具有小寫開始)從不同的DatePicker(與來自離子天然大寫開始)。

在我需要它的分量,我剛剛組件之前聲明:

declare var datePicker: any; 

然後是組件內部我已經改變了我的代碼:

let options = { 
     date: new Date(), 
     mode: 'date', 
     androidTheme: datePicker.ANDROID_THEMES.THEME_HOLO_LIGHT 
    }; 

    DatePicker.show(options).then(
     (date) => { 
     console.log('date_value:' + date) 
    }).catch((error) => { }); 

它的工作原理。

+0

Hi @nyluje您好,請提供HTML代碼部分以瞭解確切的解決方案,現在我試着做離子2日期選擇器,我已經嘗試了很多方法對我沒有用,所以能否請你幫忙那麼如果你更新的重擊者是更容易理解和對我們有用..謝謝... - –

+0

看看這個問題的答案:http://stackoverflow.com/questions/40751535/ionic-2- add-custom-input-component-in-a-form-within-a-page-final-goal-integr/40791281#40791281我已經發布了我使用的完整代碼。 – nyluje

+0

感謝您的寶貴意見我會檢查和更新你謝謝... –