##介绍:
这是一个ionic-datepicker bower组件,可在任何离子框架的应用程序中使用。此组件无需其他插件。该插件是完全开源的。请对此插件进行评分
从1.0.0版本中,此组件具有许多新功能,您应该使用的方式与该组件的旧版本不同。如果您想查看此组件的先前版本的文档,请检查以前的版本
对于离子V2,该组件正在开发中。你可以在这里检查
查看演示
##先决条件。
- node.js,npm
- 离子
- 鲍尔
- g
##如何使用:
- 在您的项目文件夹中,请使用Bower安装此插件
bower install ionic-datepicker --save
这将安装此插件的最新版本。如果您想安装任何特定版本(例如:0.9.0),则
bower install ionic-datepicker#0.9.0 --save
- 在您的
index.html文件中指定ionic-datepicker.bundle.min.js的路径。
< script src =" lib/ionic-datepicker/dist/ionic-datepicker.bundle.min.js " > script >- 在您应用程序的主模块中,注入依赖
ionic-datepicker,以便使用此插件
angular . module ( 'mainModuleName' , [ 'ionic' , 'ionic-datepicker' ] ) {
//
}- 您可以使用
ionicDatePicker提供商在配置方法中以应用程序级别配置此日期选择器。如果您想设置配置,则您的配置方法可能看起来像这样。但这不是强制性步骤。
. config ( function ( ionicDatePickerProvider ) {
var datePickerObj = {
inputDate : new Date ( ) ,
titleLabel : 'Select a Date' ,
setLabel : 'Set' ,
todayLabel : 'Today' ,
closeLabel : 'Close' ,
mondayFirst : false ,
weeksList : [ "S" , "M" , "T" , "W" , "T" , "F" , "S" ] ,
monthsList : [ "Jan" , "Feb" , "March" , "April" , "May" , "June" , "July" , "Aug" , "Sept" , "Oct" , "Nov" , "Dec" ] ,
templateType : 'popup' ,
from : new Date ( 2012 , 8 , 1 ) ,
to : new Date ( 2018 , 8 , 1 ) ,
showTodayButton : true ,
dateFormat : 'dd MMMM yyyy' ,
closeOnSelect : false ,
disableWeekdays : [ ]
} ;
ionicDatePickerProvider . configDatePicker ( datePickerObj ) ;
} )在上面的代码中,我没有配置所有属性,但是您可以尽可能多地配置属性。
您可以配置的属性如下。
a)输入日期(可选):这是我们可以传递给组件的日期对象。您可以将任何日期对象提供给此属性。默认值是new Date() 。
b)titlelabel (可选):弹出式或模态的可选标题。如果省略或设置为null ,则标题将默认为当前选定的日期,格式为MMM dd, yyyy
c)setLabel (可选): Set按钮的标签。 Set默认值
d)今日标签(可选): Today按钮的标签。默认值Today
e)闭合标签(可选): Close按钮的标签。默认值Close
f)星期一第一次(可选):如果您想将星期一显示为第一天,则设置为true 。默认值为false ,这将显示为周日的第一天。
g)WeeksList (可选):这是一个阵列,其中包含所有工作日的列表。如果您想以其他语言或格式显示几个月,或者希望使用模态而不是用于此组件的弹出窗口,则可以使用此功能,可以在控制器中定义weekDaysList阵列,如下所示。
[ "Sun" , "Mon" , "Tue" , "Wed" , "thu" , "Fri" , "Sat" ] ;默认值是
[ "S" , "M" , "T" , "W" , "T" , "F" , "S" ] ;h)几个月的人(可选):这是一个包含所有月份列表的阵列。如果您想以其他语言或格式显示几个月,则可以使用此功能。您可以创建一个如下的数组。
[ "Jan" , "Feb" , "March" , "April" , "May" , "June" , "July" , "Aug" , "Sept" , "Oct" , "Nov" , "Dec" ] ;默认值是
[ "January" , "February" , "March" , "April" , "May" , "June" , "July" , "August" , "September" , "October" , "November" , "December" ] ;i)残疾人(可选):如果您有禁用日期列表,则可以创建一个类似于以下数组。默认值是一个空数组。
var disabledDates = [
new Date ( 1437719836326 ) ,
new Date ( ) ,
new Date ( 2016 , 7 , 10 ) , //Months are 0-based, this is August, 10th.
new Date ( 'Wednesday, August 12, 2015' ) , //Works with any valid Date formats like long format
new Date ( "08-14-2016" ) , //Short format
new Date ( 1439676000000 ) //UNIX format
] ; j)TemplateType (可选):这是字符串类型,它采用两个值IE modal或popup 。默认值是modal 。如果您想在弹出窗口中打开,则可以将值指定为popup ,否则可以忽略它。
k)来自(可选):这是一个日期对象,您希望从中启用日期。您可以使用此属性通过from: new Date()来禁用以前的日期。默认情况下,所有日期均已启用。请注意,几个月为0。
l)至(可选):这是一个日期对象,您希望启用日期。您可以使用此属性通过指定to: new Date()来禁用未来日期。默认情况下,所有日期均已启用。请注意,几个月为0。
m)dateformat (可选):这是模板中使用的日期格式。默认为dd-MM-yyyy 。有关如何格式日期,请参见:http://www.ecma-international.org/ecma-262/5.1/#sec-15.9.1.1.15
n)showtodaybutton (可选):布尔值指定是否显示Today按钮。默认值是false 。
o)CloseOnselect (可选):布尔值指示选择日期选择器/模态是否会在选择后关闭。如果设置为true , Set按钮将被隐藏。默认值是false 。
p)disableweekdays (可选):接受从0(星期日)到6(周六)开始的数字数组。如果您指定此数组的任何值,那么它将在整个日历中禁用该周日。例如,如果您通过[0,6],则所有星期日和周六将被禁用。
- 在控制器中注入
ionicDatePicker,您希望在其中使用此组件。然后使用以下方法可以调用datepicker。
. controller ( 'HomeCtrl' , function ( $scope , ionicDatePicker ) {
var ipObj1 = {
callback : function ( val ) { //Mandatory
console . log ( 'Return value from the datepicker popup is : ' + val , new Date ( val ) ) ;
} ,
disabledDates : [ //Optional
new Date ( 2016 , 2 , 16 ) ,
new Date ( 2015 , 3 , 16 ) ,
new Date ( 2015 , 4 , 16 ) ,
new Date ( 2015 , 5 , 16 ) ,
new Date ( 'Wednesday, August 12, 2015' ) ,
new Date ( "08-16-2016" ) ,
new Date ( 1439676000000 )
] ,
from : new Date ( 2012 , 1 , 1 ) , //Optional
to : new Date ( 2016 , 10 , 30 ) , //Optional
inputDate : new Date ( ) , //Optional
mondayFirst : true , //Optional
disableWeekdays : [ 0 ] , //Optional
closeOnSelect : false , //Optional
templateType : 'popup' //Optional
} ;
$scope . openDatePicker = function ( ) {
ionicDatePicker . openDatePicker ( ipObj1 ) ;
} ;
} ;除了配置方法外,您还可以在控制器中重新配置所有选项。如果您再次设置任何属性,则控制器中提到的值将覆盖它们。如果应用程序中有多个属性属性,这将很有用。
在以上所有步骤中,唯一强制性的是callback ,您将在其中获取所选的日期值。
##屏幕截图:
成功完成上述步骤后,您应该能够使用此插件。
第一个屏幕截图显示了弹出窗口,第二个显示了该插件的模态。
ios:
安卓 :
## CSS类:
###弹出窗口
1)prev_btn_section
2)next_btn_section
3)select_section
4)month_select
5)eyal_select
6)calendar_grid
7)Weeks_row
8)selected_date
9)date_col
10)今天
###模式
1)left_arrow
2)Right_arrow
其他类别与弹出窗口相同。您可以使用以下任何一个类别自定义弹出窗口和模态CSS。
#### ionic_datepicker_popup #### ionic_datepicker_modal
按钮的CSS类名称如下
a)对于Set按钮,类名称为button_set
b)对于Today按钮,班级名称为button_today
c)对于Close按钮,类名称为button_close
##版本:
1)V0.1.0
已经实现了整个日期选择器功能,并且可以使用bower install ionic-datepicker --save
2)V0.1.1
错误修复。这是ionic-datepicker组件的最新版本。
3)v0.1.2
错误修复。如果我们不将日期传递给时间选择器,则默认情况下会选择今天的日期。
4)v0.1.3
错误修复
5)v0.2.0
禁用以前的日期功能。
6)v0.3.0
a)用户可以使用下拉列表选择年和几个月。
b)添加了回调功能。
7)V0.4.0
特征
a)添加了添加的未来日期功能。您可以将其用于选择DOB。
b)添加了DatePicker Modal的自定义标题文本。
bugfixes
错误#22,错误#26,错误#29
8)V0.5.0
a)已添加了禁用特定日期的功能。
b)添加用于自定义的CSS类。
9)V0.6.0
a)固定日期选择颜色问题。
b)添加的功能是将周一作为一周的第一天显示。
10)V0.7.0
特征
a)添加to from功能。
b)代码重新结构。
c)更新的节点模块。
bugfixes
错误#58,错误#56,错误#54,错误#42,错误#37,错误#28
11)V0.8.0
特征
您可以在此ionic-datepicker中使用弹出式或模态。
BugFix
错误#59
12)v0.9.0
特征
您可以给定制的周名。
BugFix
错误#63
13)v1.0.0
特征
a)您可以从配置方法配置离子datepicker。
b)您可以从控制器中调用离子日期。
c)新CSS
d)禁用日历的特定日子。
除上述功能外,还增加了更多功能。
bugfixes
错误#88,错误#94,错误#101,错误#112,错误#114,错误#116,错误#117,错误#120,错误#128,错误#129,错误#133,错误#133,错误#145,错误#146,错误#151,错误#154,错误#154,错误#161,错误#163,错误#166,错误#168,错误#168,错误#168,错误#168,错误#168,错误#171,171,错误#171,错误
14)v1.1.0
bugfixes
错误#178,错误#179,错误#180
15)v1.2.0
很多错误修复。很多公关的合并。
CSS更改弹出窗口,因此所有月份的所有日期都适合指定的高度。
16)v1.2.1
修改版本以与当前版本版本匹配。
##许可证:麻省理工学院
##联系人:gmail:rajeshwar.patlolla@gmail.com
github:https://github.com/rajeshwarpatlolla
Twitter:https://twitter.com/rajeshwar_9032
Facebook:https://www.facebook.com/rajeshwarpatlolla
贝宝:rajeshwar.patlolla@gmail.com
评论或评分:http://market.ionic.io/plugins/ionicdatepicker
通过命令行克隆项目: