material-ui 组件|日期选择器 |没有数据传递给 onChange
Posted
技术标签:
【中文标题】material-ui 组件|日期选择器 |没有数据传递给 onChange【英文标题】:material-ui components | datePicker | no data passed to onChange 【发布时间】:2016-10-08 19:46:57 【问题描述】:我有一个带有 material-ui DatePicker
的简单表单,例如:
<DatePicker name="startDate" autoOk=true floatingLabelText="startDate" onChange=(x, event) => console.log(arguments); />
但是,如果我更改日期,则会将一个空数组打印到控制台。我将不胜感激有关如何解决此问题的任何建议。
"material-ui": "0.15.0"
"react": "15.1.0"
"react-tap-event-plugin": "1.0.0"
"redux": "3.0.5"
"redux-form": "^6.0.0-alpha.4"
【问题讨论】:
【参考方案1】:你在console.log()
中传递的"arguments"
是什么?
来自 material-ui 中的日期选择器文档:
签名: 函数(空:未定义,日期:对象)=> 无效 null:由于没有与更改关联的特定事件,因此第一个参数将始终为 null。 日期:新日期。
因此你的代码变成:
onChange=(event, x) => console.log(x);
x
是日期。
希望对你有帮助。
【讨论】:
arguments 是一个类似数组的对象(developer.mozilla.org/en/docs/Web/javascript/Reference/…),所有参数都传递给函数,对我来说它是空的,没有任何东西传递在那里,正如我的问题中所写的那样 所以,我不知道为什么,但是:onChange=(event, date) => console.log(arguments, event, date);
返回空数组、null 和日期。感谢@antonis-zisis 的提示
来自文档:“箭头函数不会将参数对象暴露给它们的代码”。 developer.mozilla.org/en/docs/Web/JavaScript/Reference/…(现在一切都值得了……)
返回未定义的@material-ui/core
: "^4.11.0"以上是关于material-ui 组件|日期选择器 |没有数据传递给 onChange的主要内容,如果未能解决你的问题,请参考以下文章
材料 ui 实验室日期选择器,无法解析“@material-ui/lab/AdapterDateFns”
赛普拉斯测试 Material-UI 日期选择器不适用于 Github 操作
远程时区的material-ui LocalizationProvider