给react-mobile-datepicker添加自己的样式

最近写了一个项目需要使用日期选择器,适配移动端。很不巧的是,我使用的是antd中的日期选择器,放到移动端,简直没发看,不但字体小,选择难。最主要不适配移动端,反移动端。
真是难死了

经过百度查到一个叫react-mobile-datepicker的一个移动端日期选择器
这里给大家挂一个链接就不详讲操作手册了
react-mobile-datepicker
它的功能十分强大,而且适配移动端非常合适。

<DatePicker
      isOpen={isOpen}
      showHeader={false}
      value={value}
      onCancel={onCancel}
      onSelect={onSelect}
      confirmText={confirmText}
      cancelText={cancelText}
    />

这是引入进来后的组件可以绑定一些参数,但是我现在的版本报了一个错误,我也不知道为什么,但是不影响使用,哪位小伙伴知道可以在评论区留言讨论把这个报错去掉。

错误:

Warning: ReactDOM.unstable_renderSubtreeIntoContainer() is no longer supported in React 18. Consider using a portal instead. Until you switch to the createRoot API, your app will behave as if it's running React 17. Learn more: https://reactjs.org/link/switch-to-createroot
    at Modal

样式问题:
在这里插入图片描述

在手机上小的可怜不好选择 连确定都不好点击,并且在我写入样式都不生效,无论是加入!import。
还是提高css权重都无法使得样式问题得到更改。

但是我突然想到 因为咱们是通过点击事件才让它展示的,也就是说咱们页面是没有渲染到这个样式的,
他是通过添加的方式来添加到页面的

所以咱们也用添加的方式来给组件强制增加css

let datepickerScroll = document.getElementsByClassName('datepicker-scroll')
		let datepickerHeader = document.getElementsByClassName('datepicker-header')
		let datepickerNavbarBtn = document.getElementsByClassName('datepicker-navbar-btn')
		for (let index = 0; index < datepickerScroll.length; index++) {
			for (let inde = 0; inde < datepickerScroll[index].childNodes.length; inde++) {
				datepickerScroll[index].childNodes[inde].style.fontSize = "30px"
			}
		}
		for (let index = 0; index < datepickerNavbarBtn.length; index++) {
			datepickerNavbarBtn[index].style.fontSize = "60px"
		}
		for (let index = 0; index < datepickerHeader.length; index++) {
			datepickerHeader[index].style.fontSize = "60px"
		}

当我们点击是否显示时,通过getElementsByClassName强制给组件添加样式。便能解决当前问题!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值