vue项目中使用moment js

在main.js中

import moment from 'moment'

Vue.prototype.moment = moment;

在文件中使用

const systemTime = this.moment(new Date()).format('YYYY-MM-DD');

### 集成和使用 Moment.jsVue 3 中 #### 安装 Moment.js 为了在 Vue 3 项目中利用 Moment.js 处理日期时间,首先需要安装该库。可以通过 npm 或 yarn 来完成这一步骤。 ```bash npm install moment --save ``` 或者如果偏好使用 yarn: ```bash yarn add moment ``` 此命令会在项目的依赖项中加入 Moment.js 库[^1]。 #### 引入并配置 Moment.js 接着,在 `main.js` 文件里引入 Moment.js 并将其挂载到 Vue 实例上以便于在整个应用范围内访问。 ```javascript import { createApp } from 'vue'; import App from './App.vue'; import moment from 'moment'; const app = createApp(App); app.config.globalProperties.$moment = moment; export const vm = app.mount('#app'); ``` 这段代码确保了可以在任何组件内通过 `this.$moment()` 访问 Moment.js 方法[^3]。 对于组合式 API (Composition API),可以创建一个自定义钩子来提供相同的功能: ```typescript import { inject, InjectionKey, provide } from "vue"; import moment from "moment"; interface Moment { (): typeof moment; } const key: InjectionKey<Moment> = Symbol(); function useMoment(): typeof moment { return inject(key) as any; } provide(key, () => moment); export default useMoment; ``` 这样就可以在 setup 函数内部调用 `useMoment()` 获取当前实例下的 Moment 对象[^4]。 #### 组件内的使用案例 下面展示了一个简单的例子说明如何在一个列表渲染场景下格式化显示每条记录的时间戳。 ```html <template> <ul> <li v-for="(item, index) in items" :key="index"> 创建时间:{{ $moment(item.timestamp).format('YYYY-MM-DD HH:mm:ss') }} </li> </ul> </template> <script lang="ts"> import { defineComponent } from 'vue'; export default defineComponent({ data() { return { items: [ { timestamp: '2023-07-08T12:00:00Z' }, // 更多数据... ] }; } }); </script> ``` 上述模板中的 `$moment().format()` 就是用来将 ISO 字符串形式的时间戳转换为更易读的形式[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值