Picker.js 2.66 KB
import Picker from 'react-native-picker';
import moment from 'moment'
import 'moment/locale/zh-cn'
export const PickRemindDate = (logic) => {
	let date = []
	let dateText = []
	const oneDay = 1000 * 60 * 60 * 24
	const now = new Date().getTime()
	let targetDay = now - 15 * oneDay
	moment.locale('zh-cn')
	for (let i = 0; i < 30; i++) {
		if (targetDay === now) {
			dateText.push('今天')
		} else {
			const result = moment(targetDay).format('MMMDo') + ' ' + moment(targetDay).format('dddd')
			dateText.push(result)
		}
		date.push(targetDay)
		targetDay = targetDay + oneDay
	}
	const data1 = ['上午', '下午']
	const data2 = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']
	const data3 = ['00', '05', '10', '15', '20', '25', '30', '35', '40', '45', '50', '55']
	const data = [dateText, data1, data2, data3]
	Picker.init({
		pickerData: data,
		selectedValue: ['今天', '上午', '9', '00'],
		wheelFlex: [2, 1, 1, 1],
		pickerCancelBtnText: "移除",
		pickerTitleText: "",
		pickerConfirmBtnText: "设置提醒",
		pickerConfirmBtnColor: [53, 133, 211, 1],
		pickerCancelBtnColor: [129, 129, 129, 1],
		pickerToolBarBg: [248, 248, 248, 1],
		pickerBg: [255, 255, 255, 1],
		onPickerConfirm: data => {
			logic.remindDate = data
		},
		onPickerCancel: data => {
			console.log(data);
		},
	});
	Picker.show();
}
export const PickExpireDate = (logic) => {
	let date = []
	let dateText = []
	const oneDay = 1000 * 60 * 60 * 24
	const now = new Date().getTime()
	let targetDay = now - 15 * oneDay
	moment.locale('zh-cn')
	for (let i = 0; i < 30; i++) {
		const result = moment(targetDay).format('MMMDo')+""
		dateText.push(result)
		date.push(targetDay)
		targetDay = targetDay + oneDay
	}
	Picker.init({
		pickerData: dateText,
		selectedValue: [dateText[15]],
		pickerCancelBtnText: "移除",
		pickerTitleText: "",
		pickerFontSize:20,
		pickerConfirmBtnText: "设置到期日",
		pickerConfirmBtnColor: [53, 133, 211, 1],
		pickerCancelBtnColor: [129, 129, 129, 1],
		pickerToolBarBg: [248, 248, 248, 1],
		pickerBg: [255, 255, 255, 1],
		onPickerConfirm: data => {
			logic.expireDate = data[0]
		},
		onPickerCancel: data => {
			console.log(data);
		},
	});
	Picker.show();
}
export const PickCategory = (data,onChange) => {
	Picker.init({
		pickerData: data,
		selectedValue: [data[0]],
		pickerCancelBtnText: "取消",
		pickerTitleText: "",
		pickerFontSize:26,
		pickerConfirmBtnText: "确定",
		pickerConfirmBtnColor: [53, 133, 211, 1],
		pickerCancelBtnColor: [129, 129, 129, 1],
		pickerToolBarBg: [248, 248, 248, 1],
		pickerBg: [255, 255, 255, 1],
		onPickerConfirm: data => {
			onChange( data[0])
		},
		onPickerCancel: data => {
			console.log(data);
		},
	});
	Picker.show();
}