亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

vue中引用了別的組件 ,如何使this指向Vue對象

vue中引用了別的組件 ,如何使this指向Vue對象

精慕HU 2019-02-12 13:12:43
我引用了VueAwesomeSwiper輪播圖組件,想要在輪播結束的時候執行一些操作。配置項里有個onTransitionStart方法,但是this指向swiper,我想把swiper里的index賦值給vue里的index,但是this指向不對,用that替換也不行,如何解決?配置項如下  data() {      return {        index:"",        swiperOptionTop: {          autoplay:true,          notNextTick: true,          speed:3000,          nextButton: '.swiper-button-next',          prevButton: '.swiper-button-prev',          spaceBetween: 10,          onTransitionStart (swiper) {            // let that=this            console.log(this)            console.log(swiper.activeIndex)            let index=swiper.activeIndex            // this.index=index            // let that.middlePoint=this.lines[index].middlePoint          }        },        lines:{},        middlePoint:""      }    },問題是我再onTransitionStart這個swiper方法中打印出的this 是swiper,如何讓這里面的this指向vue對象,我想根據index操作lines里面的數據
查看完整描述

2 回答

?
回首憶惘然

TA貢獻1847條經驗 獲得超11個贊

可以在 onTransitionStart emit 一個事件

用事件來處理


或者 用箭頭函數 嘗試一下,(沒有試過,自己嘗試)


onTransitionStart: (swiper) => {

            // let that=this

            console.log(this)

            console.log(swiper.activeIndex)

            let index=swiper.activeIndex


            // this.index=index

            // let that.middlePoint=this.lines[index].middlePoint

          }


查看完整回答
反對 回復 2019-02-20
?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

你可以在你的方法外面定義一個變量

`var myVue = {}

export default {


name: 'vue_tabledemo1',

// 初始化


data () {

console.log(myVue)

return {

//TODO 這里可以得到這個this

}

},

beforeCreate () {

myVue = this

}

}

created


查看完整回答
反對 回復 2019-02-20
  • 2 回答
  • 0 關注
  • 2770 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號