当我选择日期并应用过滤器时,startDate和endDate都是对象,我似乎无法获得所选日期。
我已经尝试过选择对象内部的属性,但这并不能给我带来美好的时光。
我有以下代码:
控制器
$scope.datePicker = {
date: {startDate: null, endDate: null},
options: {
maxSpan: {
days: 31
},
maxDate: moment(),
locale: {
separator: ' - ',
format: "D/MM/YYYY"
},
monthNames: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro',
'Outubro', 'Novembro', 'Dezembro'
]
}
};
HTML
<input class="filter-select date-picker" type="text"
date-range-picker
options="datePicker.options"
max="datePicker.options.maxDate"
ranges="datePicker.opstions.maxSpan.days"
ng-model="datePicker.date" />
我还有一个观察者,记录了以下图像:
有人知道如何以简单的字符串或日期格式获取startDate和endDate值吗?
答案 0 :(得分:1)
您可以使用moment以所需的格式获取日期。
例如:
@IBAction func oneTapped(_ sender: Any) {
if staroneBtn.isSelected == true{
staroneBtn.setBackgroundImage(#imageLiteral(resourceName: "1stared"), for: .normal)
hotelArray.filter(){$0.star == 1}
self.tbView.reloadData()
} else if staroneBtn.isSelected == false{
staroneBtn.setBackgroundImage(#imageLiteral(resourceName: "1star"), for: .normal)
}
staroneBtn.isSelected = !staroneBtn.isSelected
}
@IBAction func twoTapped(_ sender: UIButton) {
if startwoBtn.isSelected == true{
startwoBtn.setBackgroundImage(#imageLiteral(resourceName: "2stared"), for: .normal)
hotelArray.filter(){$0.star == 2}
self.tbView.reloadData()
}else if startwoBtn.isSelected == false{
startwoBtn.setBackgroundImage(#imageLiteral(resourceName: "2star"), for: .normal)
}
startwoBtn.isSelected = !startwoBtn.isSelected
}
要了解各种日期格式,可以在moment date formats上进行检查