1. 程式人生 > >【原創】My97DatePicker報錯 Uncaught TypeError: Cannot read property 'length' of null 分析

【原創】My97DatePicker報錯 Uncaught TypeError: Cannot read property 'length' of null 分析

公司ui前端框架的日曆外掛使用的是第三方的My97DatePicker,在使用過程中,為了滿足日期格式化的要求
寫了下面兩種寫法

下面這樣展示 “年-月-日 時:分:秒” 是正常,且無報錯
在這裡插入圖片描述

但是換個格式,下面這個是"時分秒"的格式就有問題
在這裡插入圖片描述

報錯如下:

VM352:1 Uncaught TypeError: Cannot read property 'length' of null
    at My97DP.initQS (eval at <anonymous> (calendar.js:5), <anonymous>:1:19879)
    at My97DP._fillQS (eval at <anonymous> (calendar.js:5), <anonymous>:1:13732)
    at My97DP.draw (eval at <anonymous> (calendar.js:5), <anonymous>:1:18612)
    at My97DP.init (eval at <anonymous> (calendar.js:5), <anonymous>:1:4541)
    at new My97DP (eval at <anonymous> (calendar.js:5), <anonymous>:1:1729)
    at humanStatcs.html:1

這是截圖
在這裡插入圖片描述

原因分析:
1 先自己找官網的最新版,本地demo測試功能是否可行。經過本地測試發現,語法一樣,功能一樣,正常顯示,且不會報錯。
2 檢視本地專案中的My97DatePicker版本號,發現是測試版
在這裡插入圖片描述

而自己從官網下載的最新版卻不是,嘗試本地替換外掛。完成後,發現能夠正常使用,語法,頁面效果都正常。

問題結論:
是My97DatePicker版本的問題導致,替換為穩定版即可
注意:第三方的外掛如果要使用,最好不要使用測試版。選擇穩定版是比較妥當的選擇。