moment

  • 是一款常用的处理时间的库
  • 传入 1999-03-01T16:00:00.000Z YYYY/MM/DD
  • 输出 1999/03/02
const moment = require('moment');const myDatePattern = (date, pattern) =>{return moment(date).format(pattern)
}

给扩展hbs功能.

  • 放在 utils/helper.js 下方便管理
const hbs = require('koa-hbs');
const moment = require('moment');hbs.registerHelper("date", (date, pattern) => {try {return moment(date).format(pattern);} catch (err) {return ""}
});
  • 说明:
  1. hbs.registerHelper(param1, cb): 第一个参数是标识符
  2. 第二个参数是一个回调函数,当触发标记时,所进行的事件处理

在koa中hbs使用

const hbs = require('koa-hbs');
const helpers = require('./ustils/helpers');  // 一定要有这一行,否则调用{{date }}时,找不到app.use(hbs.middleware({viewPath: __dirname + '/views',defaultLayout: 'layout',partialsPath: __dirname + '/views/partials',disableCache: true
}))

使用扩展date

  • 数据格式如下:
users:[{username: "tom", age: 20, birth: new Date(1999, 2, 2)},{ username: "jerry", age: 21, birth: new Date(1999, 3, 2) }
]
  • 调用如下:
<ul>{{#each users}}<li>{{username}} - {{age}} - {{date birth 'YYYY/MM/DD' }} </li>{{/each}}
</ul>

  • 总结:
  1. 由于先使用,hbs.registerHelper,方法注册了一个名字为date的事件监听器,当遇到{{date birth 'YYYY/MM/DD'}}时,会将根据事件监听器找到date的事件处理器,即回调函数,然后将 birth 作为参数1 传入, 'YYYY/MM/DD’作为参数2传入.最后最为一个整体返回

koa --- 扩展hbs方法相关推荐

  1. PHP安装扩展mcrypt以及相关依赖项 【PHP安装PECL扩展的方法】

    一:Mcrypt简介 Mcrypt是PHP的一个扩展,完成了常用加密算法的封装.其实该扩展是对mcrypt标准类库的封装,mcrypt完成了相当多的常用加密算法,如DES, TripleDES, Bl ...

  2. linux php mysql.so_在linux下php挂接mysql.so扩展的方法

    总结的方向:在linux下php挂接mysql.so扩展的方法 问题背景:平常我们都是先安装mysql,然后才能去安装php.假如先安装php,后安装mysql,由于php需要连接mysql,因而在p ...

  3. Windows下Memcache的安装及PHP扩展配置方法

    这篇文章主要介绍了Windows下Memcache的安装及PHP扩展配置方法,需要的朋友可以参考下 一.下载 找到完整的memcache的Windows安装包,解压放在硬盘上,比如 F:\memcac ...

  4. 在linux下php挂接mysql.so扩展的方法

    总结的方向:在linux下php挂接mysql.so扩展的方法 问题背景:平常我们都是先安装mysql,然后才能去安装php.假如先安装php,后安装mysql,由于php需要连接mysql,因而在p ...

  5. centos php mcrypt,CentOS yum php mcrypt 扩展安装方法

    这篇文章主要为大家介绍了CentOS系统下通过yum安装php mcrypt扩展的方法,需要的朋友可以参考下使用 yum install php-mcrypt 安装mcrypt扩展时会提示没有安装包 ...

  6. PHP的swoole扩展安装方法详细教程

    这篇文章主要为大家分享了PHP的swoole扩展安装方法详细教程,具有实用性和参考价值,感兴趣的小伙伴们可以参考一下 Swoole支持PHP 5.3.10以上版本,所以安装Swoole之前请先安装PH ...

  7. 对Java的URL类支持的协议进行扩展的方法

    转载自   对Java的URL类支持的协议进行扩展的方法 JAVA默认提供了对file,ftp,gopher,http,https,jar,mailto,netdoc协议的支持.当我们要利用这些协议来 ...

  8. php安装扩展步骤,PHP扩展安装方法步骤解析

    php扩展安装方法极简单. 也遵循3大步.但多出一个phpize的步骤. 1.pecl.php.net 在右上解的输入框 中输入需要的扩展 比如 redis 2.搜索完成后会看到两个蓝色的框 . 下方 ...

  9. php seaslog安装,浅谈win10下安装php seaslog扩展的方法

    本篇文章给大家分享一下win10 php安装seaslog扩展的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. [推荐学习:<PHP视频教程>] 一.检查系统环境情 ...

最新文章

  1. 作为一个程序员,数学对你到底有多重要(转)
  2. abb工业机器人指令lf怎么用_工业机器人课程:ABB知识点27 | I/O控制指令
  3. python TypeError: not all arguments converted during string formatting 解决
  4. 还怕GPU资源不够用?多实例GPU MIG助攻资源利用难题
  5. mysql高级笔记_MySQL高级部分笔记
  6. easyui树形菜单实现
  7. Linux下Socket的简单使用及最简化封装
  8. mysql三高讲解(一):1.2 一个sql语句的执行过程
  9. 香农编码实验报告matlab,实验三 香农编码
  10. eclipse如何用php,phpeclipse使用详解
  11. 4-7终极无敌DP乱秀
  12. 南琼考试系统APP服务器,南琼考试系统
  13. Flutter 本地数据库sqflite实战操作
  14. Go 中文和unicode字符之间转换
  15. H3C交换机密码修改
  16. 容错性低是什么意思_王者荣耀:在成为高手之前,这4位容错率低的千万别碰!...
  17. 零基础想要快速的学好3D游戏建模,兼职接单私活,来看业内人士的分析
  18. Android中关于Manifest的权限注册问题
  19. 论文阅读笔记(4)——《Language Generation with Multi-Hop Reasoning on Commonsense Knowledge Graph》
  20. java 委派关系_一文读懂java类加载之双亲委派机制

热门文章

  1. python教程循环语句,Python基础教程之循环语句(for、while和嵌套循环)
  2. caffe 下测试 MNIST数据
  3. Saiku Table展示数据合并bug修复(二十五)
  4. 华为架构师8年经验谈:从单体架构到微服务的服务化演进之路
  5. 网络操作系统P12页答案
  6. windwon安装macaca环境
  7. POJ C++程序设计 编程题#7:字符串排序
  8. Finished yeah!
  9. ReportViewer 2010 打印预览,用鼠标快速切换显示比例时报错:存储空间不足,不能处理此命令...
  10. 错误内存【读书笔记】C程序中常见的内存操作有关的典型编程错误