recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment un fichier Vue obtient-il l'instance actuelle ?

Comment une fonction dans un objet l'utilise-t-elle pour obtenir l'instance actuelle ?

export default {
  name:'calendar',
  data() {
    return {
      moment: moment(),
      month: monthArr[moment().month()],
      date: moment().date(),
      day: dayArr[moment().day()],
      swiperOption: {
        effect: 'flip',
        loop: true,
        onSlideNextEnd: function (swiper) {
          console.log('next');
          this.moment = this.moment.add(1, 'd');//这里的this不是实例的this
          this.month = monthArr[this.moment.month()];
          this.date = this.moment.date();
          this.day = dayArr[this.moment.day()];
        },
        onSlidePrevEnd: function (swiper) {
          console.log('prev;');
        }
      }
    }
  },
·
·
·
·
·
}
三叔三叔2723 Il y a quelques jours710

répondre à tous(2)je répondrai

  • 怪我咯

    怪我咯2017-06-15 09:25:36

    Écrivez un autre calculé et lancez swiperOption dans calculé. Essayez-le. Si vous l'écrivez de cette façon, l'instance n'a pas encore été créée et ne doit donc pas être appelée.

    répondre
    0
  • 怪我咯

    怪我咯2017-06-15 09:25:36

    想到个方法,但是感觉挺麻烦的
    data() {
        return {
          moment: moment(),
          month: monthArr[moment().month()],
          date: moment().date(),
          day: dayArr[moment().day()],
          swiperOption: {
            _this:this,
            loop: true,
            onSlideNextStart: function (swiper) {
              console.log(this._this);
              this._this.moment = this._this.moment.add(1, 'd');
              this._this.month = monthArr[this._this.moment.month()];
              this._this.date = this._this.moment.date();
              this._this.day = dayArr[this._this.moment.day()];
            },
            onSlidePrevEnd: function (swiper) {
              console.log('prev;');
            }
          }
        }
      },

    répondre
    0
  • Annulerrépondre