返回顶部
首页 > 资讯 > 前端开发 > node.js >vue中变量在settimeout内部效果失效怎么办
  • 710
分享到

vue中变量在settimeout内部效果失效怎么办

2024-04-02 19:04:59 710人浏览 独家记忆
摘要

这篇文章主要介绍了Vue中变量在settimeout内部效果失效怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。解决方法如下:1、定义一

这篇文章主要介绍了Vue中变量在settimeout内部效果失效怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

解决方法如下:

1、定义一个self暂存this

2、再改变变量的值,则生效啦

  var self=this;
    this.toastrVal = inVal;
    this.loadState = true;
    this.noBg = bgState;
    setTimeout(function () {
     self.loadState = false;
    }, 3000)

拓展知识:解决vue在setTimeout内修改this失效的问题

当在vue中使用定时器来修改一个变量值的时候,发现没有效果,这是由于setTimeout函数调用的代码运行在与所在函数完全分离的执行环境上,这会使得this指向的是window对象。

要想setTimeout指向正确的值,可以使用如下方法:

1、使用箭头函数

export default {
 data () {
  return {
   left: -9999,
   bottom: -9999
  }
 },
 methods: {
  cancelMask: function () {
   setTimeout(() => {
    this.bottom = 0;
    this.left = 0;
   }, 500);
  }
 }
}

此时函数的this指向的是定义它的时候的对象,也就是this指向了data内中对应的变量。

2、将当前对象的this保存为一个变量

export default {
 data () {
  return {
   left: -9999,
   bottom: -9999
  }
 },
 methods: {
  cancelMask: function () {
   var that = this;
   setTimeout(function () {
    that.bottom = 0;
    that.left = 0;
   }, 500);
  }
 }
}

方法中将this存在一个对象中,此时执行setTimeout函数时,setTimeout函数内的that就会访问到这个变量,就会得到当前对象。

感谢你能够认真阅读完这篇文章,希望小编分享的“vue中变量在settimeout内部效果失效怎么办”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网node.js频道,更多相关知识等着你来学习!

--结束END--

本文标题: vue中变量在settimeout内部效果失效怎么办

本文链接: https://lsjlt.com/news/68120.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • vue中变量在settimeout内部效果失效怎么办
    这篇文章主要介绍了vue中变量在settimeout内部效果失效怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。解决方法如下:1、定义一...
    99+
    2024-04-02
  • vue-cli在ie9+中无效怎么办
    这篇文章主要介绍了vue-cli在ie9+中无效怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、ie9+报错vuex require...
    99+
    2024-04-02
  • swiper在vue项目中loop循环轮播失效怎么办
    这篇文章主要介绍swiper在vue项目中loop循环轮播失效怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在vue(2.5.x)中使用swiper(4.3.3),轮播加了au...
    99+
    2024-04-02
  • margin-top在Firefox失效怎么办
    这篇文章主要介绍margin-top在Firefox失效怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!margin-top在Firefox失效的解决方法"collap...
    99+
    2024-04-02
  • vue动画打包后失效怎么办
    这篇文章主要介绍了vue动画打包后失效怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。webpack 打包后动画未执行,就是npm ru...
    99+
    2024-04-02
  • vue+springboot跨域session+cookie失效怎么办
    小编给大家分享一下vue+springboot跨域session+cookie失效怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一...
    99+
    2024-04-02
  • jquery.zclip轻量级复制失效怎么办
    这篇文章将为大家详细讲解有关jquery.zclip轻量级复制失效怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。工作原理利用一个透明的 Flash ,让其漂浮在按钮...
    99+
    2024-04-02
  • css中line-height失效怎么办
    小编给大家分享一下css中line-height失效怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 一、行高失效标题问题启事: 检查你CSS中设置字体font-family技俩属...
    99+
    2024-04-02
  • vue-element-admin菜单标签失效怎么办
    小编给大家分享一下vue-element-admin菜单标签失效怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!设置菜单路由时,代码如下: {   pat...
    99+
    2024-04-02
  • vue怎么实现回到顶部top效果
    本篇内容主要讲解“vue怎么实现回到顶部top效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue怎么实现回到顶部top效果”吧! html  ...
    99+
    2024-04-02
  • layui中onchange失效以及form动态渲染失效怎么办
    小编给大家分享一下layui中onchange失效以及form动态渲染失效怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!最...
    99+
    2024-04-02
  • js放到head中失效怎么办
    小编给大家分享一下js放到head中失效怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1.今天写js碰到一个奇怪的问题,写...
    99+
    2024-04-02
  • Bootstrap中popover弹出框在append后失效怎么办
    这篇文章将为大家详细讲解有关Bootstrap中popover弹出框在append后失效怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在使用popover(弹出框)...
    99+
    2024-04-02
  • 在Vue中怎么实现打字机的效果
    本篇内容介绍了“在Vue中怎么实现打字机的效果”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!最终效果I‘m ByPunk...
    99+
    2023-07-02
  • Vue 中怎么实现全局变量和局部变量
    本篇文章为大家展示了Vue 中怎么实现全局变量和局部变量,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。局组件和局部组件1.先定义组件   Vue...
    99+
    2024-04-02
  • 怎么使用CSS变量实现心动效果
    本篇内容介绍了“怎么使用CSS变量实现心动效果”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 前...
    99+
    2024-04-02
  • js开发中autocomplete="off"在chrom中失效怎么办
    这篇文章主要为大家展示了“js开发中autocomplete="off"在chrom中失效怎么办”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下...
    99+
    2024-04-02
  • Vue+Electron下Vuex的Dispatch没有效果怎么办
    这篇文章将为大家详细讲解有关Vue+Electron下Vuex的Dispatch没有效果怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。这个问题是解决基于 vue 和...
    99+
    2024-04-02
  • mybatis中的test语句失效怎么办
    这篇文章主要介绍了mybatis中的test语句失效怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。mybatis test语句失效正常情况下,写动态sql的if tes...
    99+
    2023-06-29
  • CSS中margin-top属性失效怎么办
    这篇文章主要介绍了CSS中margin-top属性失效怎么办的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS中margin-top属性失效怎么办文章都会有所收获,下面我们一起来看看吧。常出现两种情况:(一)...
    99+
    2023-07-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作