当前位置: 首页 > news >正文

wordpress建站模板重庆网络推广公司

wordpress建站模板,重庆网络推广公司,湖南省建设教育协会网站,网站建设模范代码直接贴效果图😄 首先日历是用的AntDesign提供的Calendar组件,这个组件还是蛮强大的,可以自定义头部时间下拉;渲染每个时间段,或者重置时间段内容,玩的空间是很大的 直接贴代码,结尾最后我会将…

直接贴效果图😄
在这里插入图片描述
首先日历是用的AntDesign提供的Calendar组件,这个组件还是蛮强大的,可以自定义头部时间下拉;渲染每个时间段,或者重置时间段内容,玩的空间是很大的

直接贴代码,结尾最后我会将开发中遇到的问题贴出来解答一下

第一步:下载js-calendar-converter添加到项目中,用于获取节假日等信息

yarn add  js-calendar-converter

第二步:样式我就不贴了,开发代码如下

import React, { PureComponent } from 'react';
import { Calendar, message } from 'antd';
import { Moment } from 'moment';
import moment from 'moment';
// @ts-ignore
import calendar from 'js-calendar-converter';
import './index.less';export interface MarketingCalendarPageSettingStates {/*** 开始渲染日历(在改变updateLocale之后渲染,周日才会展示在前面)*/isStartLoadingCalendar: boolean;
}export class MarketingCalendarPageSetting extends PureComponent<any,MarketingCalendarPageSettingStates
> {constructor(props: any) {super(props);this.state = {isStartLoadingCalendar: false,};}componentDidMount() {moment.updateLocale('zh-cn', { week: { dow: 0 } });this.setState({isStartLoadingCalendar: true,});}componentWillUnmount() {moment.updateLocale('zh-cn', { week: { dow: 1 } });}getListData = (value: Moment) => {let listData;switch (value.date()) {case 8:listData = [{ type: 'warning', content: '内容1' },{ type: 'success', content: '内容2' },];break;case 10:listData = [{ type: 'warning', content: '内容1' },{ type: 'success', content: '内容2' },];break;case 15:listData = [{ type: 'warning', content: '内容1' },{ type: 'success', content: '内容2' },];break;default:}return listData || [];};onChangeDate = (date?: Moment) => {if (date) {message.success('改变后的时间' + date);}};render() {const { isStartLoadingCalendar } = this.state;if (!isStartLoadingCalendar) {return null;}const dateCellRender = (value: Moment) => {const listData = this.getListData(value); //活动const month = value.month() + 1;const info: any = calendar.solar2lunar(value.year(), month, value.date()); //当天信息(比如是否是节假日)return (<div className="marketing-calendar-page-setting__calendar-date"><div className="marketing-calendar-page-setting__calendar-date__tag">{info && info.Term && <span>{info.Term}</span>}{info && info.festival && <span>{info.festival}</span>}{info && info.lunarFestival && <span>{info.lunarFestival}</span>}</div>{listData.map((item: any) => {return <div key={item.content}>{item.content}</div>;})}</div>);};return (<div className="marketing-calendar-page-setting"><div className="marketing-calendar-page-setting__top">门店名称</div><div className="marketing-calendar-page-setting__center"><div className="marketing-calendar-page-setting__center__left"><Calendarlocale={moment}dateCellRender={dateCellRender}onChange={this.onChangeDate}/></div><div className="marketing-calendar-page-setting__center__right"></div></div></div>);}
}

简单说说我问到的问题
1.Calendar默认“周日”一行在最后面,但产品要求周日必须在最前面
采用的方法是:

componentDidMount() {moment.updateLocale('zh-cn', { week: { dow: 0 } });}
componentWillUnmount() {moment.updateLocale('zh-cn', { week: { dow: 1 } });
}

处理过程中发现,加载完还是周日在最后面,但是一点击其中一个日期里面周日跑第一列去了
于是state了一个字端isStartLoadingCalendar, 等updateLocale完之后再加载日历组件,完美解决~
关于isStartLoadingCalendar代码看上方完整代码即可

this.setState({isStartLoadingCalendar: true,});

2.第二个问题是产品要求将节假日,节气都展示在对应的日期中,节假日好说,节气随着每年,日期不固定,于是网上各种找
比如:https://www.jiejiariapi.com/(跨域,而且不稳定,有时候都访问不到)
比如:https://github.com/YangH9/ChinaHolidayCalender/blob/master/models/calendar.js(这ChinaHolidayCalender个库下的js,引入项目改成React发现节假日没问题,特殊节日没展示,定位底层代码自己动手改了一下,出来了,但是节气怎么修改都没展示,说实话 也不是很看的懂)
最终:https://blog.csdn.net/a99101/article/details/130321624(感谢这位同学,使用了js-calendar-converter,完美解决~)

3.第三个问题,关于Calendar日历上方自带的年月下拉选择,产品不要自带的,要自定义。
具体代码实现我发到这个链接上去了,有需要的可以打开看看~
链接:https://blog.csdn.net/weixin_43517190/article/details/141198131?spm=1001.2014.3001.5501

http://www.shuangfujiaoyu.com/news/60815.html

相关文章:

  • 雅虎网站收录提交入口公众号开发网站公司
  • 网站建设合同法网络营销中的seo是指
  • 校园网站模版黄页88网推广服务
  • 微微网站建设企业营销战略
  • 网站的平面设计图用ps做河南seo网站多少钱
  • h56wcom什么网站seo程序
  • 腾讯云服务器centos做静态网站做营销型网站哪家好
  • 在线制作二维码网站怎么制作链接网页
  • 网站文章内链怎么做互动营销的概念
  • 昆明网站建设锐网网页搜索排名提升
  • 前端代码练习网站网络营销岗位职责和任职要求
  • 做播放器电影网站需要多少钱产品推广平台排行榜
  • 智慧团建密码格式网站如何做优化推广
  • 展览公司网站模板seo诊断a5
  • 东莞网站设计找哪里南宁网
  • 如何利用互联网推广产品seo可以从哪些方面优化
  • 抚顺网站制作网站seo属于什么专业
  • 涡阳网站建设哪家好seo搜索引擎优化书籍
  • 企业网站分析直通车关键词怎么选 选几个
  • asp.net做网站吗网站建站设计
  • 做下载网站好不好做北京seo公司排名
  • 采集网站怎么做个人网站网页首页
  • 沈阳网下载北京网络seo
  • 网站服务器安全防护seo l
  • 四川最新疫情电脑优化大师
  • 做性的网站有哪些seo推广平台服务
  • web网站开发案例的好书店铺推广渠道有哪些方式
  • wordpress实现单点登录网站seo技术能不能赚钱
  • 阿里云备案网站是空的竞价排名采用什么计费方式
  • 湖南企业做网站seo排名工具提升流量