看完就懂的編輯頁面如何巧妙處理時間

需求分析

分析:
我們通常會遇到這種情況,當我們制作一個表單頁面的時候,通常會有添加和編輯的情況,我們在提交的時候還需要將時間的格式轉換為字符串格式進行傳參。

在這里我們使用的是 iview 中的 DatePicker type格式為datetime可選擇日期和時間
在這里插入圖片描述

添加頁面

在添加頁面中相對簡單很多 因為插件具有 @on-change 時間 時間的參數就是當前選中的時間字符串格式的 所以我們只需要在這個事件中賦值即可
在這里插入圖片描述
首先我們進行了雙向綁定 然后綁定事件

在這里插入圖片描述

在事件中我們只需要將time參數傳遞給對應變量即可 下圖查看效果

在這里插入圖片描述

當我們選擇對應時間的時候輸出的time為字符串格式的時間 所以我們的賦值也搞定了
下面來看一個麻煩的編輯頁面

編輯頁面

上面的添加頁面很簡單 我們只需要通過 change 事件進行賦值即可 但是在編輯頁面中 我們跳轉到編輯頁面然后獲取詳情 并綁定到時間插件上面 這時候我們不對時間進行選擇 也就不觸發change事件了 所以當我們提交的時候看一下輸出
在這里插入圖片描述

在這里插入圖片描述
通過獲取詳情已經復制給了日期插件 并沒有觸發change事件 我們點擊確定按鈕輸出的是實踐對象 但是如果用戶進來更改了時間 進而觸發change事件后 時間格式又成為了字符串 所以我們再次需要判斷是否為字符串類型的格式在選擇性的進行格式化

推薦以下

在這里插入圖片描述

export function parseTime(time, cFormat) {if (arguments.length === 0) {return null}const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'let dateif (typeof time === 'object') {date = time} else {if (('' + time).length === 10) time = parseInt(time) * 1000date = new Date(time)}const formatObj = {y: date.getFullYear(),m: date.getMonth() + 1,d: date.getDate(),h: date.getHours(),i: date.getMinutes(),s: date.getSeconds(),a: date.getDay()}const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {let value = formatObj[key]if (key === 'a') return ['一', '二', '三', '四', '五', '六', '日'][value - 1]if (result.length > 0 && value < 10) {value = '0' + value}return value || 0})return time_str}
  • 首先我們引入到使用組件中
    在這里插入圖片描述
  • 如果要轉化的值不為空則進行格式化
    在這里插入圖片描述
    在這里我們不用考慮當前時間的格式 當前用戶有沒有選擇時間 因為在上面的parseTime方法中我們進行了判斷
    在這里插入圖片描述
    這樣就可以了

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/248711.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/248711.shtml
英文地址,請注明出處:http://en.pswp.cn/news/248711.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[轉]Tomcat中8005/8009/8080/8443端口的作用

8005&#xff1a;關閉tomcat進程所用。當執行shutdown.sh關閉tomcat時就是連接8005端口執行“SHUTDOWN”命令--由此&#xff0c;我們直接telnet8005端口執行“SHUTDOWN”&#xff08;要大寫&#xff0c;小寫沒用&#xff1b;不運只能telnet 127.0.0.1 8005其他地址telnet都不能…

月入10萬和月入5千的人關鍵區別是什么???

月入10萬和月入5千的人關鍵區別是什么&#xff1f;&#xff1f;&#xff1f;知識體系、決策能力、魄力和格局&#xff01;&#xff01;&#xff01;人不學不知道&#xff0c;看過很多書&#xff0c;學過很多課&#xff0c;發現不久就忘了&#xff0c;很難真正被自己消化吸收&am…

關于“wap2app僅支持對已通過ICP備案的域名站點進行打包”問題解決

關于“wap2app僅支持對已通過ICP備案的域名站點進行打包”問題解決 如果我們是通過Vue技術寫的移動端&#xff0c;開發完成后我們的項目需要放到服務器上&#xff0c;然后我們在將服務器上面的項目打包apk格式 wap2app將網頁打包成apk步驟 使用HbuilderX創建一下wap2app項目 我…

第五周-第07章節-Python3.5-內置模塊詳解之OS模塊

os.sep:取代操作系統特定的路徑分隔符 os.name:指示你正在使用的工作平臺。比如對于Windows&#xff0c;它是nt&#xff0c;而對于Linux/Unix用戶&#xff0c;它是posix。os.getcwd:得到當前工作目錄&#xff0c;即當前python腳本工作的目錄路徑。os.getenv()和os.putenv:分別用…

2021前端面試題總結

HTML CSS 定位 flex布局 display css3新屬性 css3的邊框-border-radius–box-shadow–border-image 背景 background-size–background-origin &#xff1a;屬性規定背景圖片的定位區域。文字效果&#xff1a;text-shadow&#xff1a;在 CSS3 中&#xff0c;text-shadow …

mysql之庫操作_創建用戶_修改用戶權限_修改用戶密碼

用戶操作&#xff1a; 1、create user Faye127.0.0.1IDENTIFIED BY 123 #添加一個用戶名字為Faye的用戶,127.0.0.1為本機的ip,123為密碼 補&#xff1a;create user Faye% IDENTIFIED BY 123 #添加一個用戶名字為Faye的用戶,‘%’的意思為所有人都可以連接Faye這個用戶,123為…

前端導出文件,后端返回文件流過大直接干崩潰

前端導出文件 前端很常見的導出需求 導出world xlsx 甚至是zip 在我這個項目中是導出圖片&#xff0c;圖片量還是蠻大的&#xff0c;直接干崩潰了 我們這里是后端同學直接返回的是文件流 通過調用接口拿到文件流后直接調用下面的方法 export function exportZip(res, name)…

在eclipse中創建第一個java應用程序,并在控制臺輸出“hello world”。

package com.fs.test;public class HelloWorld {public void aMethod() {}public static void main(String[] args) {System.out.print("Hello world");}}轉載于:https://www.cnblogs.com/ooo888ooo/p/11042700.html

R-CNN , Fast R-CNN , Faster R-CNN原理及區別

github博客傳送門csdn博客傳送門 RCNN 1、生成候選區域 使用Selective Search&#xff08;選擇性搜索&#xff09;方法對一張圖像生成約2000-3000個候選區域&#xff0c;基本思路如下&#xff1a; &#xff08;1&#xff09;使用一種過分割手段&#xff0c;將圖像分割成小區域 …

Vue和iview-admin搭建的項目進行兼容

寫在前面&#xff1a; 用iview-admin創建的基于Vue的項目&#xff0c;開發完成后&#xff0c;用戶是使用的360瀏覽器&#xff0c;其中有兩個模式&#xff0c;一個是極速模式&#xff08;谷歌內核&#xff09;&#xff0c;一個是兼容模式&#xff08;IE內核&#xff09;&#x…

App過大

最近開發中遇到一個報錯信息 如下 Error:Cannot fit requested classes in a single dex file.Try supplying a main-dex list. # methods: 72477 > 65536 大致意思是Android App中的方法數超過65535時&#xff0c;如果往下兼容到低版本設備時&#xff0c;就會報編譯錯誤 主…

第三課《讓簡歷有點色彩》

一、學習了css 的概念、工作方式、語法 CSS (Cascading Style Sheets) &#xff1a;是一種用于向用戶指定文檔如何呈現的語言 — 它們如何被指定樣式、布局等工作方式&#xff1a; 瀏覽器將 HTML 和 CSS 轉化成 DOM &#xff08;文檔對象模型&#xff09;。DOM在計算機內存中表…

Vue 打包后打開為空白頁面 并且控制臺報錯‘Failed to load resource: net::ERR_FILE_NOT_FOUND’

問題描述 當我們開發完成后進行 npm run build打包后形成dist文件 我們通過訪問dist文件中的index&#xff0c;會出現空白頁面什么都不顯示的問題&#xff0c;控制臺中還會報‘Failed to load resource: net::ERR_FILE_NOT_FOUND’錯誤&#xff0c;其實是因為打包后的dist目錄…

引用Nuget包Microsoft.EntityFrameworkCore.Tools.DotNet報錯

錯誤如下 解決方法 使用VS2017或更高版本在改項目右鍵&#xff0c;選擇“編輯xxx.csproj”&#xff0c;并添加如下一句話&#xff0c;就可以成功引用改Nuget包 <PackageReference Include"Microsoft.EntityFrameworkCore.Tools.DotNet" Version"2.0.3"/…

echarts 折線圖 多條折線數據相同時展示的圖形并沒有重合

簡單粗暴的使用echarts官網展示用例 我講series中的幾個對象中的值都改成了相同的 看到數值相同 圖表中卻沒有重合 后面發現解決辦法如下 只需要將對象中的stack屬性刪除就可以了&#xff0c;不僅僅針對這個問題 有時候我們發現圖表展示的數據跟y周的值有差距時可以試試這個…

Django,ajax實現表格增刪查改,Django內置分頁功能。

1.工程目錄 2.urls.py """Django_ajax URL ConfigurationThe urlpatterns list routes URLs to views. For more information please see:https://docs.djangoproject.com/en/2.1/topics/http/urls/ Examples: Function views1. Add an import: from my_app im…

前端登錄邏輯

話不多說直接上圖片&#xff0c;純手工打造

使用CEfSharp之旅(8)CEFSharp 使用代理 更換位置IP

直接上代碼&#xff1a; var settings new CefSettings(); settings.CachePath "cache"; settings.CefCommandLineArgs.Add("proxy-server", ProxyAddress); Cef.Initialize(settings);出處&#xff1a;https://blog.csdn.net/u010919083/article/detail…

新入駐博客園立一個flag

2019年博客12 * 2篇轉載于:https://www.cnblogs.com/chenzy87/p/10233209.html

echarts 多次通過setOption改變圖形數據時 數據有時不進行變化

需求&#xff1a;通過切換xyz三個選項&#xff0c;進行切換統計圖中的折線條數 當前數據為正確&#xff0c;頁面加載默認選中x軸&#xff0c;當選中xy后也沒有問題 當我取消y軸時 發現圖表并沒有進行變化 但是option中的數據確實已經刷新了&#xff0c;猜測是在setOption時候…