Vue学习笔记(六、跑马灯效果)

下面是一段跑马灯效果的代码:

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>VueBaseCode</title>
    <script src="./lib/vue.js"></script>
</head>

<body>

    <div id="app">
        <input type="button" value="跑起来" @click="run">
        <input type="button" value="停下来" @click="stop">
        <h3>{{msg}}</h3>
    </div>


    <script>
        var vm = new Vue({
            el: '#app',
            data: {
                msg: '好好学习,天天向上。',
                intervalId: null
            },
            methods: {
                run() {
                    if (this.intervalId != null) return;
                    this.intervalId = setInterval(() => {
                        var start = this.msg.substring(0, 1)
                        var end = this.msg.substring(1)
                        this.msg = end + start
                    }, 400);
                },
                stop() {
                    clearInterval(this.intervalId);
                    this.intervalId = null;
                }
            }
        });
    </script>
</body>

</html>

这里我们通过"@"来绑定方法,通过":"来绑定h3内容。

在data对象里面添加了一个setInterval方法的引用intervalId,并设置初始值为null,在run方法里面我们将SetInterval方法的引用赋给leintervalId,在setInterval定时器里面,我们定义了匿名方法,该方法将msg的开头第一个字母和其后面的字符串分别取出,并交换头尾相加,并将其值重新赋给msg。

在stop方法里面,我们停止了定时器,并将interval设置为null。

相关推荐
三水不滴3 分钟前
有 HTTP 了为什么还要有 RPC?
经验分享·笔记·网络协议·计算机网络·http·rpc
久邦科技13 分钟前
奈飞工厂中文官网入口,影视在线观看|打不开|电脑版下载
学习
三块可乐两块冰22 分钟前
【第二十九周】机器学习笔记三十
笔记
好好学习天天向上~~29 分钟前
6_Linux学习总结_自动化构建
linux·学习·自动化
小书包酱34 分钟前
在 VS Code中,vue2-vuex 使用终于有体验感增强的插件了。
vue.js·vuex
Zhencode1 小时前
Vue3 响应式依赖收集与更新之effect
前端·vue.js
听麟1 小时前
HarmonyOS 6.0+ 跨端智慧政务服务平台开发实战:多端协同办理与电子证照管理落地
笔记·华为·wpf·音视频·harmonyos·政务
天下代码客1 小时前
使用electronc框架调用dll动态链接库流程和避坑
前端·javascript·vue.js·electron·node.js
非凡ghost2 小时前
PowerDirector安卓版(威力导演安卓版)
android·windows·学习·软件需求
risc1234562 小时前
认识一个事物,需要哪些基本能力与要素?
笔记