亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime 庫進(jìn)行日期格式化的實現(xiàn)方法 原創(chuàng)

原創(chuàng)  更新時間:2023年05月12日 09:19:25   原創(chuàng) 投稿:shichen2014  
這篇文章主要介紹了Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime 庫進(jìn)行日期格式化的實現(xiàn)方法,結(jié)合具體實例形式分析了express框架引入EJS模版以及導(dǎo)入 silly-datetime 庫的格式化方法傳遞給EJS模版使用的相關(guān)操作技巧,需要的朋友可以參考下

在 Express 框架中使用 EJS 模板引擎并結(jié)合 silly-datetime 庫進(jìn)行日期格式化的步驟如下:

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'); // 設(shè)置模板文件夾
app.set('view engine', 'ejs'); // 設(shè)置視圖模板引擎
// 定義全局變量,模板都可以訪問到
app.use(function (req, res, next) {
? // 將 silly-datetime 的 format 方法用 locals 來代理
? res.locals.formatDate = function (date, fmt) {
? ? return sd.format(date, fmt);
? };
? next();
});
// 創(chuàng)建路由和功能代碼
// ...

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

在模板文件中,可以使用模板語法調(diào)用布局文件中定義的  formatDate 函數(shù)。具體方式如下:

<!-- 渲染數(shù)據(jù)列表 -->
<% 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 方法對文章發(fā)布時間進(jìn)行了格式化處理,最終展示為 YYYY-MM-DD HH:mm:ss 格式的日期字符串。

注意:在模板文件中需要正確引入 silly-datetime 庫,否則無法使用 formatDate 函數(shù)。

補充說明:silly-datetime 庫的原始用法為:

const sd = require('silly-datetime');
sd.format(new Date(), 'YYYY-MM-DD HH:mm:ss');//此處的new Date()位置可以傳入其他日期格式參數(shù)

對應(yīng)的,在app.js中定義該函數(shù)給EJS模版使用,則對應(yīng)形式為:

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

相應(yīng)的,EJS模版中使用該函數(shù),則是需要通過locals來調(diào)用定義的formatDate方法,再傳入對應(yīng)位置的參數(shù)即可:

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

該方法經(jīng)筆者測試可以正常使用。

相關(guān)文章

最新評論