const root = document.getElementById("app");
root.innerHTML = `
<button>-</button>
<span>0</span>
<button>+</button>
`;
const [decrementBtn, incrementBtn] = root.querySelectorAll("button");
const span = root.querySelector("span");
let count = 0;
decrementBtn.addEventListener("click", () => {
count--;
span.innerText = count;
});
incrementBtn.addEventListener("click", () => {
count++;
<template>
<div>
<button v-on:click="counter -= 1">-</button>
<span>{{ counter }}</span>
<button v-on:click="counter += 1">+</button>
</div>
</template>
<script>
export default {
data() {
return {
counter: 0
};
}
};
</script>
function App() {
const [counter, setCounter] = React.useState(0);
What is Reactivity?
const root = document.getElementById("app");
root.innerHTML = `
<button>-</button>
<span>0</span>
<button>+</button>
`;
const [decrementBtn, incrementBtn] = root.querySelectorAll("button");
const span = root.querySelector("span");
let count = 0;
decrementBtn.addEventListener("click", () => {
count--;
span.innerText = count;
});
incrementBtn.addEventListener("click", () => {
count++;
span.innerText = count;
});
<template>
<div>
<button v-on:click="counter -= 1">-</button>
<span>{{ counter }}</span>
<button v-on:click="counter += 1">+</button>
</div>
</template>
<script>
export default {
data() {
return {
counter: 0
};
}
};
</script>
function App() {
const [counter, setCounter] = React.useState(0);