DateTimePicker 日期时间选择器报错 Cannot read property ‘getHours‘ of undefined, 无法选中`[__ob_: observer__]`时做判断
我在一次开发中遇到了这个情况:使用DateTimePicker 日期时间选择器,出现无法选中,
报错 Cannot read property ‘getHours’ of undefined,
这个原因是,这个DateTimePicker 日期时间选择器 v-model 绑定的属性对应的数据类型,只能是 String() 类型的,其他数据类型均会报错,我这边是因为接口要求,改成了数组类型,所以报错了。
这是个人的部分代码:
<el-date-pickerv-model="searchForm.inviteTimeList"type="datetime"placeholder="选择日期时间"style="width: 600px"></el-date-picker>
我个人解决办法: 不要修改其数据类型, 在发送请求前,设置一个变量,把这个值存储到这个变量中,再吧这个变量处理成自己想要的数据类型。
我需要的是数组数据类型,下面贴上我自己的代码
// state.chatSearchForm.inviteTimeList 就是 时间日期选择器 v-model 绑定的值, 数据类型为 String
// Object.prototype.toString.call(inviteTimeListQuery) === '[object Date]' -代表只有选择了时间日期,这个 v-model绑定的属性才会有数据
// [object Date] --这个要根据 选中时间日期时, v-model属性获取到值得数据类型来做判断,如果你获取得时间是 时间戳,这里应该是[object Array] , 我这边获取的 标准日期格式的。
// getTime() 是将标准日期格式处理成 时间戳。这里还有更好的处理方法,但是我懒得写了。
let inviteTimeListQuery = state.chatSearchForm.inviteTimeList || '';if (Object.prototype.toString.call(inviteTimeListQuery) === '[object Date]') {inviteTimeListQuery = [inviteTimeListQuery.getTime()];} else {inviteTimeListQuery = [];}
这样就好了,不会报错了,然后把这个inviteTimeListQuery
处理后的值 传给 后端即可。
有时候数据会包含[__ob_: observer__]
这个,想要做判断某个属性是否有值,可以先判断这个值是否存在,再判断这个值的length,这样就可以判断这个属性是否有值。
// 比如我要判断 courseLists这个属性是否有值,有值就要做其他处理,这样写就只有有值时才会进入这个判断this.searchForm.courseLists && this.searchForm.courseLists.length
elementui 一些遇到的其他问题合集: 传送门
DateTimePicker 日期时间选择器报错 Cannot read property ‘getHours‘ of undefined, 无法选中`[__ob_: observer__]`时做判断相关推荐
- DateTimePicker 日期时间选择器设置默认时间
DateTimePicker 日期时间选择器设置默认时间 default-value属性接受一个数组,第一项为开始时间,第二项为结束时间,时间格式为:"YY-mm-dd HH:mm:ss&q ...
- DateTimePicker 日期时间选择器,清空事件。并添加默认当前时间,向前推进7天的事件
当我们使用DateTimePicker 日期时间选择器,发现我们需要添加需求清空当前时间,并添加当前默认时间的时候,DateTimePicker 日期时间选择器的清空按钮并不能直接满足我们的需求,所以 ...
- element-plus DateTimePicker 日期时间选择器禁止选择当日之前的日期
vue3使用element-plus的DateTimePicker 日期时间选择器组件时,禁止选择当日之前的日期. 在el-date-picker使用disabled-date: <el-dat ...
- vue 报错 Cannot read property ‘__ob__‘ of undefined的解决方法
vue 报错 Cannot read property '__ob__' of undefined的解决方法 参考文章: (1)vue 报错 Cannot read property '__ob__' ...
- 事件监听一直报错Cannot set property 'display' of undefined
为什么80%的码农都做不了架构师?>>> css ↓ .wechatBtn {position: relative;} .wechat {position: absolute; ...
- Vue开启Gzip打包异常:webpack打包报错Cannot read property ‘emit‘ of undefined
Vue开启Gzip打包异常:webpack打包报错Cannot read property 'emit' of undefined 相关代码 const CompressionPlugin = req ...
- vue echarts使用map地图 引入china.js报错Cannot read property ‘echarts’ of undefined
下载china.js导入项目中引入,会报错Cannot read property 'echarts' of undefined import Echarts from "echarts&q ...
- uniapp 小程序报错 Cannot read property ‘forceUpdate‘ of undefined
uniapp 小程序报错 Cannot read property 'forceUpdate' of undefined 1.问题: 解决:配置小程序的ID manifest.json的文件
- bootstrap,datetimepicker日期时间选择器-限制时间段,以及中文显示问题
基于bootstrap的css,js bootstrap-datetimepicker的css,js <script src="jquery-1.11.1.min.js"&g ...
最新文章
- redis 的使用 (sort set排序集合类型操作)
- js Promise学习
- Python通过代理多线程抓取图片
- iOS之如何实现isEqual的重写
- 动态加载和静态加载及其编译步骤
- 如何在Hibernate中维护表的历史记录
- bzoj1699[Usaco2007 Jan]Balanced Lineup排队
- .net操作xml小结 (转)
- 计算机无法播放asf格式,ASF文件怎么打开播放出来?
- Http Live Streaming 实现iphone在线播放视频[转]
- 【Pytorch with fastai】第 1 章:你的深度学习之旅
- 6. 机器人正运动学---齐次变换矩阵的三种解读
- 全自动高清录播服务器,高清高清录播服务器 高清全自动录播系统 方便携带 搭建快捷...
- 阿里云服务器怎么预防CC攻击?
- 火狐浏览器叫板苹果:绝不登录iOS平台
- iOS第三方登录之Twitter(登录,获取用户信息)含demo
- java基础之垃圾回收_繁星漫天_新浪博客
- 地铁出行规划项目分析
- VTM5中的Implicit MTS和Explicit MTS
- 拨开发展迷雾,将“智慧”嵌入全业务场景【2022戴尔科技峰会预告】