頁面元素:
<div id="app">
// 1,給跑起來綁定一個點擊事件
<button @click="lang">跑起來</button>
<button @click="stop">停止</button>
<h4>{{msg}}</h4>
</div>
script:
2,在按鈕事件處理函數,寫業務邏輯代碼,拿到msg字符串,然后調用字符的substring來進行字符串的截取操作,把第一個字符截取出來,放到最后一個位置
3,為了實現點擊一下按鈕,自動截取的功能,需要把2步驟的代碼放到計時器
let vm = new Vue({
el: '#app',
data: {
msg: 'a-b-c-d-e-f-g',
intervalId:null//在data上定義計時器id
},
methods: {
lang() {
if(this.intervalId!=null)return
this.intervalId= setInterval(() => {
// 獲取到頭的第一個字符
var start = this.msg.substring(0, 1)
// 獲取到后面的所有字符
var end = this.msg.substring(1)
// 重新拼接得到新的字符串,並賦值給this.msg
this.msg = end + start
}, 400)
// vue實例中,會監聽自己身上所有的data中所有的數據,只要數據一發生變化,就會自動把最新的數據上傳到網頁上,只需要考慮數據,不需要考慮渲染
},
stop(){
clearInterval(this.intervalId)
// 沒當清除完定時器之后,需要把intervalId設置為null
this.intervalId = null;
}
},
})