1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<title>My Trame Client</title>
</head>
<body>
<main>
<div>
<h1>Hello Trame !</h1>
<div class="card">
<button id="counter" type="button"></button>
<button id="play" type="button">Auto update</button>
<button id="subtract" type="button">-1</button>
<button id="random" type="button">Random</button>
</div>
</div>
</main>
<script
crossorigin="anonymous"
src="https://www.unpkg.com/@kitware/trame/dist/trame.umd.js"
></script>
<script>
const trame = new Trame();
trame.connect().then((config) => {
trame.refs["counter"] = {
reset(value) {
trame.state.set("count", value);
},
};
const element = document.querySelector("#counter");
trame.state.watch(["count"], (count) => {
element.innerHTML = `count is ${count}`;
});
element.addEventListener("click", () => trame.trigger("add"));
document
.querySelector("#play")
.addEventListener("click", () => trame.trigger("toggle_play"));
document
.querySelector("#subtract")
.addEventListener("click", () => trame.trigger("subtract"));
document
.querySelector("#random")
.addEventListener("click", () => trame.trigger("random"));
});
</script>
</body>
</html>
|