如何在Vue.js组件中使用矩库

时间:2017-08-10 08:59:20

标签: vuejs2 momentjs

之后,#include <stdio.h> #include <string.h> #include <assert.h> void swap(int *a, int *b) { //This one works perfectly int temp; temp = *b; *b = *a; *a = temp; } void swap_KO(int *a, int *b) { //This one gives unexpected results *a = *a + *b; *b = *a - *b; *a = *a - *b; } int main() { int a = 22, b = 33; swap(&a, &b); assert(a == 33 && b == 22); // OK swap_KO(&a, &b); assert(a == 22 && b == 33); // OK swap(&a, &a); // OK assert(a == 22); swap_KO(&a, &a); // won't work assert(a == 22); }

我试过......

yarn add moment

&安培;

import moment from 'moment'
Vue.prototype.moment = moment

&安培;

import moment from 'moment'
Vue.use(moment)

什么都没有用。我得到了各种奇怪的错误消息!

有谁可以告诉,如何使用Vue.js 2的时刻库?

3 个答案:

答案 0 :(得分:6)

最后,它有效!

从组件的moment()块中调用methods

样本用法: -

<template>
<v-ons-page>
  <p>{{isToday("12-02-1980")}}</p>
</v-ons-page>
</template>

<script>
import moment from 'moment'

export default {
methods: {
        isToday(date) {
            return moment(date).isSame(moment().clone().startOf('day'), 'd');
        },
    }
}
</script>

答案 1 :(得分:1)

我发现在使用TypeScript时,必须使用

导入*从'时刻'开始

样品:

<template>
<div id="sample">
    <span>{{ formatDate("11-11-2011") }}</span>
</div>
</template>

<script lang="ts">
import Vue from 'vue';
import { Component } from 'vue-property-decorator'
import * as moment from 'moment'

@Component()
export default class Sample extends Vue {

    formatDate(d) : string {
        return moment(d).format("MMM Do YYYY");
    }
}
</script>

答案 2 :(得分:0)

我不想在每个vue组件中导入Moment,因此我采用了本文介绍的方法:https://vuejsdevelopers.com/2017/04/22/vue-js-libraries-plugins/

import Moment from 'moment';
Moment.locale( 'de' );
Object.defineProperty( Vue.prototype, '$moment', { value: Moment });

现在您可以在组件中使用Moment,即:

   methods : {

        date : function( timestamp ) {

            return this.$moment( timestamp ).format( 'LLL' );

        }

    }