<template>
<div id="app">
<button id="counter" @click="increment"></button>
<p>nextTick 전: </p>
<p>nextTick 후: </p>
</div>
</template>
<script>
import { nextTick } from "vue";
export default {
data() {
return {
count: 0,
before: 0,
after: 0
};
},
methods: {
async increment() {
this.count++;
// DOM not yet updated
this.before = document.getElementById("counter").textContent;
// DOM is now updated
nextTick().then(
function () {
this.after = document.getElementById("counter").textContent; // 1
}.bind(this)
);
}
}
};
</script>
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.