Element-ui使用的坑記錄

不同瀏覽器的dateTimePicker選擇問題

在蘋果的ios瀏覽器 safari、IE這些瀏覽器中,日期格式爲yyyy/mm/dd,中間是/來分隔日期,chrome中幾種格式都可以顯示

Element-UI的版本爲1.4.1,使用DateTimePicker組件在IE和safari無法展示指定格式的日期,後面升級版本Element-UI的版本也可以解決此問題~

在使用Element-UI的DateTimePicker組件展示日期,需要在頁面中顯示爲yyyy-mm-dd這種格式,代碼如下:

<el-date-picker
     @change="dateChange"
     v-model="ruleForm.endTime"
     type="datetime"
     placeholder="選擇日期時間"
     value-format=" yyyy-MM-dd HH:mm:ss"
     format="yyyy-MM-dd HH:mm:ss"
     >
</el-date-picker>

  // js
  dateChange(val) {
     this.ruleForm.endTime = val;
  }

因爲是通過@change中的方法,來給ruleForm.endTime賦值,並不是直接賦值,直接通過數據綁定獲取的時間格式有問題:自動會在後面加上時區,不太方便處理,所以直接通過這種change方法獲取的數據,是經過value-format格式化日期格式,就會按照yyyy-MM-dd hh:mm:ss來進行設置。

safariIE中選擇時間,頁面無法顯示,因爲這兩個瀏覽器,默認顯示的日期格式爲: yyyy/mm/dd

解決方式:

先將yyyy-MM-dd 轉換爲 yyyy/MM/dd,再提交的時候,再將yyyy/MM/dd轉換爲yyyy-MM-dd即可
dateChange(val) {
  val = val.replace(/-/g, '/');
  this.ruleForm.endTime = val;
}

submitForm (formName) {
	this.ruleForm.endTime = this.ruleForm.endTime.replace(/\//g, '-');
  // 提交表單
  ...
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章