reactjs - 如何用@material-ui/pickers 修复@date-io/moment?TypeError:utils.getDayText 不是函数
问题描述
我看过很多关于这个的帖子。我试过降级“moment”和“date-io/moment”的版本,但没有任何效果。TypeError: utils.getDayText is not a function
单击 DatePicker 组件时,我仍然可以看到。有没有人有任何其他建议?
"dependencies": {
"moment": "^2.24.0",
"@date-io/core": "^1.3.6",
"@date-io/moment": "^1.3.6",
"@material-ui/core": "^4.11.0",
"@material-ui/icons": "^4.9.1",
"@material-ui/pickers": "^3.2.10",
...
import moment from 'moment';
import MomentUtils from "@date-io/moment";
import {DatePicker, MuiPickersUtilsProvider} from '@material-ui/pickers';
const [displayDate, setDisplayDate] = useState(new Date());
const handleStartDateChange = async nextStartDate => {
nextStartDate = moment.utc(nextStartDate).startOf('day');
...
setDisplayDate(nextStartDate);
};
<MuiPickersUtilsProvider libInstance={moment} utils={MomentUtils}>
<DatePicker
value={displayDate}
onChange={newDate => handleStartDateChange(newDate)}
disableFuture={true}
autoOk={true}
fullWidth
/>
</MuiPickersUtilsProvider>
解决方案
我创建了一个新的反应应用程序来测试日期选择器。有效。原来问题是onChange()
功能。首先,我使用"@date-io/moment": "^1.3.13"
. 而且组件应该直接使用状态setDisplayDate()
而不是自定义函数handleStartDateChange()
。
推荐阅读
- project-reactor - 为什么在我的情况下有时不调用 hookOnComplete() ?
- .net-core - 如何在电子邮件确认中填充 IdentityServer4 中的用户相关数据
- javascript - 登录drupal 8站点后jQuery无法正常工作
- android-viewmodel - Android:ViewModel“计算可观察”
- python-3.x - 如何修复方法和 int 的操作数错误
- reactjs - 如何将带有 nextjs 的 React 应用程序成功部署到 AWS Amplify?
- android - 有没有办法在启用范围存储的 Android 中获得 100% 正确的文件扩展名?
- flutter - Flutter Dismissible 不再工作,但代码看起来正确
- python - Python Pandas:转换字典列表
- c++ - c ++ lambda在错误的地址/错误的上下文中执行