vue跑马灯

275 阅读1分钟

分析: 给按钮绑定一个点击事件 v-on @

在按钮的事件处理函数中,写相关业务逻辑代码:拿到msg字符串,然后调用字符串的substring,截取字符串,重新拼接

引入js:

<script src="./js/vue.js"></script>

代码:

<body>
    <div id="app">
        <input type="button" value="浪起来" @click="lang">
        <input type="button" value="低调" @click="stop">
        <h4>{{msg}}</h4>
    </div>
    <script>
        // 在vm实例中,如果要获取data上的数据,或者想调用methods的方法,通过this属性名或this方法名来进行访问,this表示new的实例对象VM
        let vm = new Vue({
            el: "#app",
            data: {
               msg:"猥琐发育,别浪!",
               intervalId:null
            },
            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)
                    
                },
                stop(){//停止
                    clearInterval(this.intervalId)
                    //每当清除了定时器之后,需要重新把intervalId设置为null
                    this.intervalId=null;
                }
            }
        })
        // 给按钮绑定一个点击事件 v-on @
        // 在按钮的事件处理函数中,写相关业务逻辑代码:拿到msg字符串,然后调用字符串的substring,截取字符串,重新拼接
        // 
    </script>
</body>