2018-06-20 20:44:40 u012982629 阅读数 4393
  • Java大数据培训学校全套教程-常用对象(21)

    Java大数据培训学校视频课程:"java大数据培训学校全套教材"系列课程由750集视频构成,基本就 是1)时下流行的java培训学校主流内部教材,2)和市面上培训学校的通 行的课程体系几乎一样。所以这套课程都能自己学下来,等于上了培训学 校一次,完全可以找个java工程师的工作了。 本门课程为"java大数据培训学校全套教材"系列课程的第二十一篇,通过学习Array对象,等相关概念让大家对常用对象编程打下好的基础。

    4699 人正在学习 去看看 马克

m-date-picker 基于 React,提供了 iOS 风格的日期选择方式,与原生 Datepicker 非常相似。
主页: https://github.com/react-component/m-date-picker
Demo: http://react-component.github.io/m-date-picker/examples/popup.html
推荐: ★★★★★
优点: 使用流畅,与原生 Datepicker 非常相似;功能强大,能满足一般需求
不足: 暂无


官方给的demo 是基于源码内部引用的,与我们实际npm i 以后集成使用有差别的, 现提供实际引用的代码:

npm  i rmc-date-picker --s
基于rmc-date-picker@6.0.8 示例
import 'rmc-picker/assets/index.css';
import 'rmc-date-picker/assets/index.css';
import 'rmc-picker/assets/popup.css';
import zh_CN from 'rmc-date-picker/lib/locale/zh_CN';
import DatePicker from 'rmc-date-picker/lib/DatePicker';
import PopPicker from 'rmc-date-picker/lib/Popup';

class Demo extends React.Component{
  constructor(props) {
    super(props);
    this.state = {
      date: null,
    };
  }

  onChange = (date) => {
    console.log('onChange', this.format(date));
    this.setState({
      date,
    });
  }

   format=(date)=>{
        let mday = date.getDate();
        let month = date.getMonth() + 1;
        month = month < 10 ? `0${month}` : month;
        mday = mday < 10 ? `0${mday}` : mday;
        return `${date.getFullYear()}-${month}-${mday} ${date.getHours()}:${date.getMinutes()}`;
   }

  onDismiss = () => {
    console.log('onDismiss');
  }

  render() {
    const { date } = this.state;
    const datePicker = (
      <DatePicker
        rootNativeProps={{'data-xx': 'yy'}}
        minDate={new Date(2015, 8, 15, 10, 30, 0)}
        maxDate={new Date(2019, 8, 15, 10, 30, 0)}
        defaultDate={new Date()}
        mode={'date'}
        locale={zh_CN}
      />
    );
    return <div style={{ margin: '10px 30px' }}>
      <h2>popup date picker</h2>
      <div>
        <PopPicker
          datePicker={datePicker}
          transitionName="rmc-picker-popup-slide-fade"
          maskTransitionName="rmc-picker-popup-fade"
          title={'选择日期'}
          date={date}
          okText={'确认'}
          dismissText={'取消'}
          onDismiss={this.onDismiss}
          onChange={this.onChange}>
          <p>点我</p>
         //触发弹框显示 只需在此处放任意标签即可
        </PopPicker>
      </div>
    </div>;
  }
}

Screenshots

web

ios

android

API

DatePicker props

name description type default
className(web) additional css class of root dom node String
prefixCls(web) prefix class String ‘rmc-date-picker’
pickerPrefixCls(web) picker prefix class String ‘rmc-picker’
defaultDate default selected date. Date
date The currently selected date. Date
mode The date picker mode. String ‘date’ enum(‘date’, ‘time’, ‘datetime’, ‘year’, ‘month’)
minDate min date Date 2000-1-1
maxDate max date Date 2030-1-1
locale the locale of area Object import from ‘rmc-date-picker/lib/locale/en_US’
use12Hours 12 hours display mode Boolean false
minuteStep The amount of time, in minutes, between each minute item.  Number 1
onDateChange Date change handler. Function(date: Date)
onValueChange fire when picker change (vals: any, index: number) => void
formatMonth Customize display value of months (month:number, current:Date) => React.Node
formatDay Customize display value of days (day:number, current:Date) => React.Node

rmc-date-picker/lib/Popup props

name description type default
className(web) additional css class of modal node String
style(web) additional modal style object {}
popupTransitionName(web) String
maskTransitionName(web) String
prefixCls(web) popup’s prefix class String ‘rmc-picker-popup’
styles(react-native) PopupPicker’s styles StyleSheet.create
datePicker DatePicker element React DatePicker element
date The currently selected date. Date
visible whether pop picker is visible Boolean false
onChange exec on ok Function(date: Date)
onVisibleChange called when pop picker visible change Function
onDismiss exec on dismiss function
okText ok button text string/React.ReactElement ‘Ok’
dismissText dismiss button text string/React.ReactElement ‘Dismiss’
title Popup title string/React.ReactElement
2018-06-12 12:27:00 weixin_30859423 阅读数 5
  • Java大数据培训学校全套教程-常用对象(21)

    Java大数据培训学校视频课程:"java大数据培训学校全套教材"系列课程由750集视频构成,基本就 是1)时下流行的java培训学校主流内部教材,2)和市面上培训学校的通 行的课程体系几乎一样。所以这套课程都能自己学下来,等于上了培训学 校一次,完全可以找个java工程师的工作了。 本门课程为"java大数据培训学校全套教材"系列课程的第二十一篇,通过学习Array对象,等相关概念让大家对常用对象编程打下好的基础。

    4699 人正在学习 去看看 马克

 

 

在IOS5以上版本(不包含IOS5)中的Safari浏览器能正确解释出Javascript中的 new Date('2013-10-21') 的日期对象。

     但是在IOS5版本里面的Safari解释new Date('2013-10-21') 就不正确,在IOS5的Safari中返回的永远是"Invalid Date"。

     后来我在网上查找了资料,原来是低版本的Safari解释new Date('2013-10-21')这个对象不一样,在IOS5中的Safari不支持这种写法,

     接着我查了很多国外的技术blog,终于找到了解决方案,原来想要IOS5中的Safari能正确解析new Date()那么必须这么写

     new Date('2013/10/21');   或者  

var d = new Date(date);
d = d.getFullYear() > 0 ? d : new Date(Date.parse(date.replace(/-/g, "/")));

主要是后台那边返回的日期格式是’2013-10-21‘这样的。导致了在低端版本的Safari中不能正确解释它!

大坑啊!!!!

转载于:https://www.cnblogs.com/nanjie/p/9172456.html

2014-02-18 17:58:30 ypkobe24 阅读数 404
  • Java大数据培训学校全套教程-常用对象(21)

    Java大数据培训学校视频课程:"java大数据培训学校全套教材"系列课程由750集视频构成,基本就 是1)时下流行的java培训学校主流内部教材,2)和市面上培训学校的通 行的课程体系几乎一样。所以这套课程都能自己学下来,等于上了培训学 校一次,完全可以找个java工程师的工作了。 本门课程为"java大数据培训学校全套教材"系列课程的第二十一篇,通过学习Array对象,等相关概念让大家对常用对象编程打下好的基础。

    4699 人正在学习 去看看 马克
---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

1.Date与DateFormat
1.1 Date
Date类用来处理日期、时间。这个类从JDK1.0就开始存在了,所以大部分构造器和方法都已经过时,不推荐使用了。

构造器:
Date():分配Date对象并初始化此对象,以表示分配它的时间(精确到毫秒)。
Date(long date):分配Date对象并初始化此对象,以表示自从标准基准时间以来的指定毫秒数。

1.2 DateFormat与SimpleDateFormat
DateFormat是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。

方法:
String format(Date date):将一个 Date 格式化为日期/时间字符串。

SimpleDateFormat是DateFormat的实现子类。SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类。

构造器:
SimpleDateFormat():用默认的模式和默认语言环境的日期格式符号构造SimpleDateFormat。
SimpleDateFormat(String pattern):用给定的模式和默认语言环境的日期格式符号构造SimpleDateFormat。

下面是pattern中字母表示的各个日期和时间的对应关系:
y   ---------- 年
M  ---------- 年中的月份
d   ---------- 月份中的天数
H  ---------- 一天中的小时数(0-23)   
k   ---------- 一天中的小时数(1-24)
K  ---------- am/pm 中的小时数(0-11) 
h   ---------- am/pm 中的小时数(1-12) 
m  ---------- 小时中的分钟数
s   ---------- 分钟中的秒数
E  ---------- 星期中的天数

注:要严格区分大小写。
例:yyyy年MM月dd日 hh时mm分ss秒 E

public class DateDemo {

	public static void main(String[] args) {

		//1.创建Date对象
		Date date = new Date();
		
		//2.使用DateFormat将时间格式封装
		//父类引用DateFormat指向子类对象SimpleDateFormat
		DateFormat format = new SimpleDateFormat("yyyy年MM月dd日 hh时mm分ss秒 E");
		
		//3.使用format方法格式化指定Date对象
		//返回String
		String time = format.format(date);
		
		System.out.println(time);
	}

}

2.Calendar
Calendar 类是一个抽象类,它为特诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
Calendar提供了一个类方法getInstance,以获得此类型的一个通用的对象。
Calendar可以通过调用set方法来设置日历字段值。还可以通过add方法对时间或日期进行计算。

主要属性:
static int YEAR:年。
static int MONTH:月。注意,从0开始计数。即1月用0表示。
static int DAY_OF_MONTH:一个月中的某天。
static int DAY_OF_WEEK:一个星期中的某天。该字段可取的值为 SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY 和 SATURDAY。注意:星期数从1开始计数,并且代表星期日。
static int HOUR:小时,12小时制。
static int HOUR_OF_DAY:小时,24小时制。
static int MINUTE:分钟。
static int SECOND:秒。

方法:
static Calendar getInstance():使用默认时区和语言环境获得一个日历。返回的 Calendar 基于当前时间,使用了默认时区和默认语言环境。 
int get(int field):返回给定日历字段的值。
void set(int field, int value):将给定的日历字段设置为给定值。
void set(int year, int month, int date):设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。
void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。该方法可以对时间或日期进行计算。

public class CalendarDemo {

	public static void main(String[] args) {

		//对月份使用查表法,因为Calendar中月份从0开始
		String[] months = {"一月","二月","三月","四月",
				"五月","六月","七月","八月",
				"九月","十月","十一月","十二月"};
		
		//对星期使用查表法,因为Calendar中1代表星期日。
		//又因为0没有任何代表,所以数组角标0为空
		String[] weeks = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
		
		//使用getInstance方法得到对象
		Calendar c = Calendar.getInstance();
		//年
		System.out.println(c.get(Calendar.YEAR) + "年");
		//月份,查表法
		int month = c.get(Calendar.MONTH);
		System.out.println(months[month]);
		//日
		System.out.println(c.get(Calendar.DAY_OF_MONTH) + "日");
		//星期,查表法
		int week = c.get(Calendar.DAY_OF_WEEK);
		System.out.println(weeks[week]);
	}

}

public class CalendarDemo2 {

	public static void main(String[] args) {

		Calendar c = Calendar.getInstance();
		
		//使用set方法设置日期
		c.set(2012, 11, 21);
		System.out.println("当前时间:");
		printCalendar(c);
		
		System.out.println();
		
		//使用add方法对日期计算
		c.add(Calendar.MONTH, 6);
		System.out.println("6个月后,时间是:");
		printCalendar(c);
		
	}
	
	
	//打印时间方法
	public static void printCalendar(Calendar c){
		String[] months = {"一月","二月","三月","四月",
				"五月","六月","七月","八月",
				"九月","十月","十一月","十二月"};

		String[] weeks = {"","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
		System.out.print(c.get(Calendar.YEAR) + "年");
		//月份,查表法
		int month = c.get(Calendar.MONTH);
		System.out.print(months[month]);
		//日
		System.out.print(c.get(Calendar.DAY_OF_MONTH) + "日");
		//星期,查表法
		int week = c.get(Calendar.DAY_OF_WEEK);
		System.out.print(weeks[week]);
	}

}

练习:获取任意年的2月有多少天。
/*
 * 获取任意年的2月有多少天
 * */
public class CalendarTest {

	public static void main(String[] args) {

		Calendar c = Calendar.getInstance();
		int yearVal = 2000;
		c.set(Calendar.YEAR, yearVal);
		int days = getDays(c);
		System.out.println(yearVal + "年2月有" + days + "天");
		
	}
	
	//该方法用于获取任意年的2月有多少天
	public static int getDays(Calendar c){
		
		//将该年份的日期设置到3月1日
		c.set(Calendar.MONTH, 2);
		c.set(Calendar.DAY_OF_MONTH, 1);
		
		//对该日期进行减一天操作,得到该年份2月最后一天
		//最后一天的数字即为2月的天数
		c.add(Calendar.DAY_OF_MONTH, -1);
		int days = c.get(Calendar.DAY_OF_MONTH);
		return days;
	}

}


---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net
2018-11-21 20:50:17 weixin_41395648 阅读数 931
  • Java大数据培训学校全套教程-常用对象(21)

    Java大数据培训学校视频课程:"java大数据培训学校全套教材"系列课程由750集视频构成,基本就 是1)时下流行的java培训学校主流内部教材,2)和市面上培训学校的通 行的课程体系几乎一样。所以这套课程都能自己学下来,等于上了培训学 校一次,完全可以找个java工程师的工作了。 本门课程为"java大数据培训学校全套教材"系列课程的第二十一篇,通过学习Array对象,等相关概念让大家对常用对象编程打下好的基础。

    4699 人正在学习 去看看 马克

在写一个倒计时页面时遇到了问题,在使用new Date('2018-08-09 11:59:59')格式化时间后,ios端页面显示invalid Date。因为'2018-08-09 11:59:59'是从api获取的数据,故需要先将数据格式替换为2018/08/09 11:59:59来兼容safari。

var formatTime = new Date($(oldTime.replace(/-/g,'/'));

获取倒计时(10分钟):

const time_now = new Date;
const rest_time = 10 - parseInt(parseInt(time_now - formatTime) / 1000 / 60);

参考文档:

html5中new Date在ios中出现Invalid Date

ios时间转时间戳出现invalid Date

2020-03-28 12:16:06 u010289343 阅读数 9
  • Java大数据培训学校全套教程-常用对象(21)

    Java大数据培训学校视频课程:"java大数据培训学校全套教材"系列课程由750集视频构成,基本就 是1)时下流行的java培训学校主流内部教材,2)和市面上培训学校的通 行的课程体系几乎一样。所以这套课程都能自己学下来,等于上了培训学 校一次,完全可以找个java工程师的工作了。 本门课程为"java大数据培训学校全套教材"系列课程的第二十一篇,通过学习Array对象,等相关概念让大家对常用对象编程打下好的基础。

    4699 人正在学习 去看看 马克

日期的符号格式风格都有哪些,写出部分代码,主要以结果分析为主。

SymbolFormatStyle枚举

         case `default`

         case defaultStandalone

         case short

         case veryShort

         case standaloneShort

         case standaloneVeryShort

有四个方法分别打印 纪元、季度、月份、星期

eraName、quarterName、monthName、weekdayName

举个例子:date.monthName(.default),这个就是以默认的符号格式风格打印月份。

下面把四种日期元素都打印一遍,以不同风格展示:

//代码示例:date(from: datestring)?.monthName(.default);解释代码:传入日期字符串“2020-03-28”,以默认风格打印月份

         月份:monthName

         default:Optional("三月"),

         defaultStandalone:Optional("三月"),

         short:Optional("3月"),

         veryShort:Optional("3"),

         standaloneShort:Optional("3月"),

         standaloneVeryShort:Optional("3")

 

         星期:weekdayName

         default:Optional("星期二"),

         defaultStandalone:Optional("星期二"),

         short:Optional("周二"),

         veryShort:Optional("二"),

         standaloneShort:Optional("周二"),

         standaloneVeryShort:Optional("二")

 

         年代/时代/纪元:eraName

         default:Optional("公元前"),

         defaultStandalone:Optional("公元前"),

         short:Optional("公元前"),

         veryShort:Optional("公元前"),

         standaloneShort:Optional("公元前"),

         standaloneVeryShort:Optional("公元前")

         

         季度:quarterName

         default:Optional("第一季度"),

         defaultStandalone:Optional("第一季度"),

         short:Optional("1季度"),

         veryShort:Optional("1季度"),

         standaloneShort:Optional("1季度"),

         standaloneVeryShort:Optional("1季度")

 

没有更多推荐了,返回首页