vue.js - 将时区与 @nuxtjs/moment 一起使用
问题描述
我们在 nuxt 应用程序中使用 @nuxtjs/moment ( https://www.npmjs.com/package/@nuxtjs/moment ) 包。
在我们的应用程序中,我们希望在用户时区显示 GMT 时间戳,如下所示:
<div>{{ $moment("2019-04-25 19:01:03").fromNow() }}</div>
但在我的电脑上,结果只是
2 hours ago
因为我在德国。
有没有办法将默认时区设置为 GMT 以便该功能正常工作?我研究了时刻时区,但不知道如何将其实现到 nuxt 应用程序。
解决方案
看起来这里的 repo 中有一个未解决的问题。我建议做的是添加时刻时区作为插件,直到该功能被合并。
安装
npm install moment-timezone
添加插件导入
// nuxt.config.js
export default {
plugins: ['~/plugins/moment-timezone-inject.js']
}
创建插件
// ~/plugins/moment-timezone-inject.js
const moment = require('moment-timezone');
export default ({ app }, inject) => {
// Inject into context, Due instances, and Vuex store
inject('moment_timezone', moment)
}
用法
// Add whatever timezone you need
<div>{{ $moment_timezone("2019-04-25 19:01:03").tz("Asia/Taipei"); }}</div>
推荐阅读
- python - 函数内部的while循环
- sql - MS Access 2016 左连接创建重复记录
- python - 从递归函数中获取两个不同的值?
- java - 问题 sql 请求返回 null 尽管它在 xampp SGBD 中返回正确的值
- c++ - c++ 使用包含向量的类时 - 候选人需要 2 个参数,提供 0
- csv - 在 Mezzio 框架 (Zend/Laminas) 中下载 CSV
- javascript - 如何获得 Chrome 的精确平滑滚动功能?
- android - 世博会开始工作,但世博会构建 apk 没有
- next.js - TailwindCSS 和 next.js - 无法应用自定义颜色
- python - 在 Django 模型中更改 FileField