请关闭广告过滤器!
我们检测到你可能使用了 AdBlock 或 Adblock Plus,素材鸟网站没有弹窗广告,请支持我们更好的发展下去。
你可以设定特殊规则或将素材鸟加入白名单,以便我们更好地为大家提供免费素材。
关闭
首页 网络编程 JavaScript Express框架中使用EJS模板引擎并结合silly-datetime库进行日期格式化的实现方法
Express框架中使用EJS模板引擎并结合silly-datetime库进行日期格式化的实现方法

Express框架中使用EJS模板引擎并结合silly-datetime库进行日期格式化的实现方法

这篇文章主要介绍了Express框架中使用EJS模板引擎并结合silly-datetime库进行日期格式化的实现方法,结合具体实例形式分析了express框架引入EJS模版以及导入silly-datetime库的格式化方法传递给EJS模版使用的相关操作技巧,需要的朋友可以参考下
浏览次数:936  次     下载次数:0  次     下载积分:0  积分
评分:

在 Express 框架中使用 EJS 模板引擎并结合 silly-datetime 库进行日期格式化的步骤如下:

1. 安装 silly-datetime 库

可以通过 npm 命令安装 silly-datetime 库,命令为:

npm install silly-datetime --save

2. 在 app.js 中配置模板引擎和使用库方法

在 app.js 文件中,需要配置使用 EJS 模板引擎,并使用 res.locals 将库方法传递给模板。下面是一个例子:

const express = require('express');
const app = express();
const sd = require('silly-datetime');
// 模板引擎配置 
app.set('views', __dirname + '/views');
// 设置模板文件夹 
app.set('view engine', 'ejs');
// 设置视图模板引擎 
// 定义全局变量,模板都可以访问到 
app.use(function(req, res, next) { // 将 silly-datetime 的 format 方法用 locals 来代理   
	res.locals.formatDate = function(date, fmt) {
		return sd.format(date, fmt);
	};
	next();
});
// 创建路由和功能代码 // ...

3. 在模板文件中使用库方法

在模板文件中,可以使用模板语法调用布局文件中定义的  formatDate 函数。具体方式如下:

<!-- 渲染数据列表 --> <% for(var i=0; i<articles.length; i++) { %>   <tr>     <td><%= articles[i].title %></td>     <td><%= locals.formatDate(articles[i].created_at, 'YYYY-MM-DD HH:mm:ss') %></td>   </tr> <% } %>

以上模板代码将使用 silly-datetime 的 format 方法对文章发布时间进行了格式化处理,最终展示为 YYYY-MM-DD HH:mm:ss 格式的日期字符串。

注意:在模板文件中需要正确引入 silly-datetime 库,否则无法使用 formatDate 函数。

补充说明:silly-datetime 库的原始用法为:

const sd = require('silly-datetime'); sd.format(new Date(), 'YYYY-MM-DD HH:mm:ss');//此处的new Date()位置可以传入其他日期格式参数

对应的,在app.js中定义该函数给EJS模版使用,则对应形式为:

res.locals.formatDate = function(date, fmt) {
	return sd.format(date, fmt);
};

相应的,EJS模版中使用该函数,则是需要通过locals来调用定义的formatDate方法,再传入对应位置的参数即可:

locals.formatDate(articles[i].created_at, 'YYYY-MM-DD HH:mm:ss')

该方法经笔者测试可以正常使用。

    0人收藏
    0人点赞
    本站素材来自用户分享,仅限学习交流请勿用于商业用途。如损害你的权益请联系客服QQ:201240120 给予处理。
    相关素材
    上传资源赚积分
    推荐素材
    共0条评论
    最新评论
    还没有评论哦!