demo:时间转换

1.目录

  《1》在src文件夹下新建文件夹prototypefns--------在此文件夹创建util.js,

  《2》在prototypefns下新建文件夹jsTime--------在此文件夹下新建datatime.js

datatime.js

  1. /**
  2. * 将时间转换成时间戳
  3. * @param DateTime 为时间格式下的时间 2018/06/14 13:00:00或2018-06-14 13:00:00
  4. * @returns {number}
  5. * @constructor
  6. */
  7. let DateToUnix = function (DateTime) {
  8. var oDate = new Date(Date.parse(DateTime.replace(/-/g, "/")));
  9. var Unix = oDate.getTime();
  10. return Unix;
  11. }
  12. let DeCa = function (Natural) {
  13. var NaturalNum;
  14. if (Natural < 10) {
  15. NaturalNum = "0" + Natural;
  16. } else {
  17. NaturalNum = Natural;
  18. }
  19. return NaturalNum;
  20. }
  21. /**
  22. * 将时间戳转化为时间
  23. * @param UnixTime 时间 格式 2018/06/14 13:00:00
  24. * @param ShowTime 时间展示格式 选择 2018/06/14 13:00:00或2018-06-14 13:00:00等等格式
  25. * @constructor
  26. */
  27.  
  28. let UnixToDate = function (UnixTime, ShowTime) {
  29. var ToUnix = new Date(UnixTime);
  30. var Years = ToUnix.getFullYear();//获取年 例子:2018
  31. var Month = ToUnix.getMonth() + 1;//获取月(0-11,0代表1月)
  32. var Day = ToUnix.getDate();//获取日(0-31)
  33. var Week = ToUnix.getDay();//获取星期(0-6;0代表星期天)
  34. var Hours = ToUnix.getHours();//获取小时(0-23)
  35. var Minutes = ToUnix.getMinutes();//获取分钟(0-59)
  36. var Seconds = ToUnix.getSeconds();//获取秒
  37. var DaTime;
  38. if (ShowTime == 2) {
  39. DaTime = Years + "/" + DeCa(Month) + "/" + DeCa(Day) + " " + DeCa(Hours) + ":" + DeCa(Minutes) + ":" + DeCa(Seconds);
  40. } else if (ShowTime == 3) {
  41. DaTime = Years + "年" + DeCa(Month) + "月" + DeCa(Day) + "日 " + DeCa(Hours) + ":" + DeCa(Minutes) + ":" + DeCa(Seconds);
  42. } else if (ShowTime == 4) {
  43. DaTime = Years + "年" + DeCa(Month) + "月" + DeCa(Day) + "日";
  44. } else if (ShowTime == 5) {
  45. DaTime = Years + "/" + DeCa(Month) + "/" + DeCa(Day);
  46. } else if (ShowTime == 6) {
  47. DaTime = Years + "-" + DeCa(Month) + "-" + DeCa(Day);
  48. } else if (ShowTime == 7) {
  49. DaTime = DeCa(Hours) + ":" + DeCa(Minutes) + ":" + DeCa(Seconds);
  50. } else if (ShowTime == 8) {
  51. DaTime = DeCa(Hours) + "时" + DeCa(Minutes) + "分" + DeCa(Seconds) + "秒";
  52. } else if (ShowTime == 9) {
  53. DaTime = "星期" + Week;
  54. } else if (ShowTime == 10) {
  55. DaTime = NumBerToHanZi(Years) + "年" + NumBerToHanZi(Month) + "月" + NumBerToHanZi(Day) + "日 星期" + NumBerToHanZi(Week);
  56. } else if (ShowTime == 11) {
  57. DaTime = Years + "-" + DeCa(Month) + "-" + DeCa(Day) + " " + DeCa(Hours) + ":" + DeCa(Minutes) + ":" + DeCa(Seconds) + " 星期" + Week;
  58. } else if (ShowTime == 12) {
  59. DaTime = Years + "/" + DeCa(Month) + "/" + DeCa(Day) + " " + DeCa(Hours) + ":" + DeCa(Minutes) + ":" + DeCa(Seconds) + " 星期" + Week;
  60. } else if (ShowTime == 13) {
  61. DaTime = Years + "年" + DeCa(Month) + "月" + DeCa(Day) + "日 " + DeCa(Hours) + "时" + DeCa(Minutes) + "分" + DeCa(Seconds) + "秒 星期" + Week;
  62. } else {
  63. DaTime = Years + "-" + DeCa(Month) + "-" + DeCa(Day) + " " + DeCa(Hours) + ":" + DeCa(Minutes) + ":" + DeCa(Seconds);
  64. }
  65. return DaTime;
  66. }
  67. //将阿拉伯数字转换成汉字
  68. let NumBerToHanZi = function (Numbers) {
  69. var strIns, chnStr = '';
  70. var chnNumChar = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九"];
  71. while (Numbers > 0) {
  72. var v = Numbers % 10;
  73. strIns = chnNumChar[v];
  74. chnStr = chnNumChar[v] + chnStr;
  75. Numbers = Math.floor(Numbers / 10);
  76. }
  77. return chnStr;
  78. }
  79. // 计算时间差
  80. let DownTime = function (EndTime) {
  81. //如果为时间戳
  82. var EndTimes = new Date(EndTime).getTime();//结束时间
  83.  
  84. var NowTime = new Date().getTime();//当前时间
  85.  
  86. var DeltaT = EndTimes - NowTime;
  87. //计算出相差天数
  88. var days = Math.floor(DeltaT / (24 * 3600 * 1000));
  89.  
  90. //计算出小时数
  91.  
  92. var leave1 = DeltaT % (24 * 3600 * 1000);
  93. var H = Math.floor(leave1 / (3600 * 1000));
  94. //计算相差分钟数
  95. var leave2 = leave1 % (3600 * 1000);
  96. var M = Math.floor(leave2 / (60 * 1000));
  97. //计算相差秒数
  98. var leave3 = leave2 % (60 * 1000);
  99. var S = Math.round(leave3 / 1000);
  100. var reminder;
  101. if (DeltaT > 0) {
  102. if (days != "") {
  103. reminder = days + "天 " + H + "小时 " + M + " 分钟" + S + " 秒";
  104. } else if (days == "" || H != "") {
  105. reminder = H + "小时 " + M + " 分钟" + S + " 秒";
  106. }
  107. } else {
  108. reminder = "请注意!时间到了!";
  109. }
  110. return reminder;
  111.  
  112. }
  113. export { DateToUnix, UnixToDate, NumBerToHanZi, DownTime }

util.js

  1. import { DateToUnix, UnixToDate, NumBerToHanZi, DownTime } from '@/prototypefns/jsTime/datatime';
  2.  
  3. export default{
  4. install (Vue,options) {
  5. /*时间转换器*/
  6. Vue.prototype.dateToUnix = DateToUnix;//转换时间戳
  7. Vue.prototype.unixToDate = UnixToDate;//转换时间
  8. Vue.prototype.downTime = DownTime;//倒计时
  9. Vue.prototype.numBerToHanZi = NumBerToHanZi;//转汉字
  10.  
  11. }
  12. }

2.在main.js引入,并全局注册

  1. import util from '@/prototypefns/util'
  2. Vue.use(util);

3.应用

  1. <!--
  2. des:将js函数变成vue的函数
  3. -->
  4. <template>
  5. <div class="app-container ">
  6. <div class="input">
  7. <input type="text " value="2018-06-15 11:23:39">
  8. <span class="input-btn" @click="toUnix">转换时间戳</span>
  9. <span v-text="unixTime"></span>
  10. </div>
  11. <div class="input">
  12. <input type="text " value="1529033019000">
  13. <span class="input-btn" @click="toDate">转换时间</span>
  14. <span v-text="dateTime"></span>
  15. </div>
  16. <div class="input">
  17. <input type="text " value="2018/12/12 23:59:59">
  18. <span class="input-btn" @click="toDownTime">倒计时</span>
  19. <span v-text="downTimeRes"></span>
  20. </div>
  21. <div class="input">
  22. <input type="text " value="123456789">
  23. <span class="input-btn" @click="toHanZi">转汉字</span>
  24. <span v-text="hanZi"></span>
  25. </div>
  26.  
  27. </div>
  28. </template>
  29. <script>
  30. export default {
  31. data() {
  32. return {
  33. requestData: [{
  34. "id": "2",
  35. "name": "JAVA",
  36. "parentid": "0",
  37. "order": "2",
  38. }],
  39. requestJson:'',
  40. unixTime:'',
  41. dateTime:'',
  42. downTimeRes:'',
  43. hanZi:''
  44.  
  45. }
  46. },
  47. created(){
  48. this.requestJson = this.json2html(this.requestData);
  49. },
  50. methods: {
  51. toUnix(){
  52. this.unixTime = this.dateToUnix('2018-06-15 11:23:39');
  53. },
  54. toDate(){
  55. this.dateTime = this.unixToDate(Number('1529033019000'));
  56. },
  57. toDownTime(){
  58. this.downTimeRes = this.downTime('2018/12/12 23:59:59');
  59. },
  60. toHanZi(){
  61. this.hanZi = this.numBerToHanZi('123456789');
  62. }
  63. },
  64. }
  65. </script>
  66. <style>
  67. .input{
  68. display: flex;
  69. }
  70. .input-btn{
  71. display: block;
  72. background: red;
  73. color: #fff;
  74. font-size: 12px;
  75. height: 20px;
  76. line-height: 20px;
  77. width: 100px;
  78. text-align: center;
  79. cursor: pointer;
  80. margin: 0 50px;
  81. }
  82. </style>

4.效果:

相关资料:

  • https://zhidao.baidu.com/question/588776134256604845.html

作者:smile.轉角

QQ:493177502

【vue】vue +element 搭建项目,将js函数变成vue的函数的更多相关文章

  1. Vue + TypeScript + Element 搭建简洁时尚的博客网站及踩坑记

    前言 本文讲解如何在 Vue 项目中使用 TypeScript 来搭建并开发项目,并在此过程中踩过的坑 . TypeScript 具有类型系统,且是 JavaScript 的超集,TypeScript ...

  2. vue教程3-webpack搭建项目

    vue-cli https://cli.vuejs.org/zh/ vue-cli是vue的命令行工具,对于创建项目,安装各种组件,运行项目都极为方便,是在开发vue中的必备工具 vue-cli基于n ...

  3. 使用VUE CLI3.0搭建项目vue2+scss+element简易版

    1.安装Vue CLI 3 //三选一即可cnpm install -g @vue/cli npm install -g @vue/cli yarn global add @vue/cli 注意: 1 ...

  4. 【vue】vue +element 搭建项目,mock模拟数据(纯干货)

    1.安装mockjs依赖 (c)npm install mockjs --save-dev 2.安装axios(Ajax) (c)npm install --save axios 3.项目目录 4.设 ...

  5. 【vue】vue +element 搭建项目,vuex中的store使用

    概述: 每一个 Vuex 应用的核心就是 store(仓库).“store”基本上就是一个容器,它包含着你的应用中大部分的状态 (state).Vuex 和单纯的全局对象有以下两点不同: Vuex 的 ...

  6. 【vue】使用vue+element搭建项目,Tree树形控件使用

    1.依赖安装 本例中,使用render-content进行树节点内容的自定义,因此需要支持JSX语法.(见参考资料第3个) 在Git bash中运行一下指令 cnpm install\ babel-p ...

  7. 【vue】vue +element 搭建项目,vue-cli 如何打包上线

    以自己的项目为例 第一步:手动修改config文件夹中的index.js文件中的build对象,将 assetsPublicPath 中的 “/” ,改为 “你实际的加载路径” 如图: 第二步:执行( ...

  8. 【vue】vue +element 搭建项目,要求既支持pc端又支持移动端

    使用场景:有适配pc端改为适配pc端和移动端,使用2套css 代码实现App.vue created: function () { if(document.documentElement.client ...

  9. 【vue】vue +element 搭建项目,组件之间通信

    父子组件通信 父 通过props属性给 子传递数据 子 操作 父  this.$parent.XXX 子通过$emit传递参数 或者通过vue-bus vue-bus既可以实现父子组件之间的通信,也可 ...

随机推荐

  1. es6 语法 (模块化)

    //export export let A=123; //导出 //导出函数 export function test(){ console.log('test'); } //导出类 export c ...

  2. 洛谷P4588 [TJOI2018]数学计算(线段树)

    题意 题目链接 Sol TJOI怎么全是板子题 对时间开个线段树,然后就随便做了.... #include<bits/stdc++.h> using namespace std; cons ...

  3. vivo怎么录屏 手机录制屏幕详细教程

    在手机上我们经常可以刷到许多类似于手机游戏之类的屏幕视频我想肯定会有很多人好奇怎么录制的,今天小编所说的便是教大家如何在安卓手机上进行屏幕录像,下面便是关于vivo怎么录屏的具体操作方法,希望能对你们 ...

  4. HTML5 & CSS3初学者指南(4) – Canvas使用

    介绍 传统的HTML主要用于文本的创建,可以通过<img>标签插入图像,动画的实现则需要第三方插件.在这方面,传统的HTML极其缺乏满足现代网页多媒体需求的能力.HTML5的到来,带来了新 ...

  5. Android项目实战(四十三):夜神模拟器

    一.下载模拟器到电脑 夜神模拟器 二.环境配置 计算机--系统--高级系统设置--环境变量 PATH 里面加入夜神模拟器的安装目录下的bin文件 三.启动模拟器 四.运行cmd命令,cd到夜神安装目录 ...

  6. Android广播机制的基本使用

    一提到广播我们第一感觉就会联想到小时候村里面的广播,安卓的广播机制也是类似于大喇叭.有发送广播的地方,也有接收广播的地方.但是具体怎么操作呢,我们来一步一步的看下去~ 安卓的广播种类 系统发送的广播: ...

  7. Android 官方DEMO - ActionBarCompat-Basic

    ActionBarCompat-Basic Demo下载地址:https://github.com/googlesamples/android-ActionBarCompat-Basic/#readm ...

  8. Mac上一条命令搭建web服务器

    实际测试工作中偶尔会需要搭建Web服务器环境,由于Mac OS X自带了Apache和PHP环境,只需要简单的启动就可以. 开启Apache 开启Web服务器的方法有两种(默认启动端口号是80): 打 ...

  9. windows10 专业版的远程服务器管理工具下载

    一.安装远程服务器管理工具: 下载地址: https://www.microsoft.com/zh-cn/download/details.aspx?id=45520 二.关闭远程服务器管理工具: 1 ...

  10. ueditor在线编辑器的简单使用-上传图片

    由于我的项目个人博客网站需要用到在线编辑器,百度的ueditor编辑器就是一个很好的编辑器.开始比较迷茫的使用,各种百度,没有我满意的答案,明明可以很简单的使用. 1.首先进入ueditor官网下载, ...