$nextTick()的理解

admin3年前vue471

简单理解Vue中的nextTick 简单理解Vue中的nextTick

$nextTick()的理解 $nextTick()的理解

错误示例1:

test.html

<!DOCTYPE html>

<html>


<head>

<meta charset="utf-8">

<title>Vue 测试实例 - 菜鸟教程(菜鸟教程 - 学的不仅是技术,更是梦想!)</title>

<script src="unpkg.com/vue/dist/vue."></script>

</head>


<body>

<div id="app">

<div v-if="showText" id="text">想要知道这段文字写的是什么?</div>

<button @click="clickMe">点我试试看就能知道那段隐藏的文字写的是什么了?</button>

</div>


<script>

new Vue({

el: '#app',

data: {

showText: false

},

methods: {

clickMe: function () {

this.showText = true;

var text = document.getElementById('text').innerHTML;

alert(text);

}

}

})

</script>

</body>


</html>

正确示例2:vue实现响应式并不是数据发生变化后dom立即变化,而是按照一定的策略来进行dom更新。

$nextTick是在下一次dom更新循环结束之后执行延迟回调,在修改数据之后使用这个方法,立即更新dom.

test.html

<!DOCTYPE html>

<html>


<head>

<meta charset="utf-8">

<title>Vue 测试实例 - 菜鸟教程(菜鸟教程 - 学的不仅是技术,更是梦想!)</title>

<script src="unpkg.com/vue/dist/vue."></script>

</head>


<body>

<div id="app">

<div v-if="showText" id="text">想要知道这段文字写的是什么?</div>

<button @click="clickMe">点我试试看就能知道那段隐藏的文字写的是什么了?</button>

</div>


<script>

new Vue({

el: '#app',

data: {

showText: false

},

methods: {

clickMe: function () {

this.showText = true;

this.$nextTick(function () {

var text = document.getElementById('text').innerHTML;

alert(text);

})

}

}

})

</script>

</body>


</html>


相关文章

在Vue中实现扫码枪读取条形码数据

https://blog.51cto.com/u_16145366/6397981...

vue实现数组上移下移置顶置底

swapItems: function(arr, index1, index2, direction) {             ...

vue输入框绑定回车事件

@keyup.enter.native=“...

vue-element动态生成的表单检验使用validator属性,直接写在el-form-item

https://blog.csdn.net/qq_40052817/article/details/89184153...

vue : 无法加载文件 C:\Users\Lenovo\AppData\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本

右键开始菜单管路员运行 power shellset-ExecutionPolicy RemoteSigned 选择Y或A即可...

vue中$refs的用法及作用详解

一般来讲,获取DOM元素,需要使用document.querySelector('#input1')方法去获取dom节点,然后再获取input1的值。但是使用了ref绑定之后,我们就不...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。