InternetProgramming/Lab5/test.html

51 lines
1.7 KiB
HTML
Raw Normal View History

2024-01-14 20:55:16 +04:00
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Stateful app</title>
<link rel="stylesheet" href="./node_modules/bootstrap/dist/css/bootstrap.css">
</head>
<body class="container-fluid p-2 col-12 col-md-8 col-lg-6">
<div class="card text-center mb-2">
<div class="card-title">
Переменная в глобальном контексте
</div>
<div class="card-body">
<div class="card-text" id="gc-content"></div>
<button class="btn btn-primary col-6 mt-2" onclick="updateGcContent(1)">Up</button>
</div>
</div>
<div class="card text-center">
<div class="card-title">
Переменная в хранилище
</div>
<div class="card-body">
<div class="card-text" id="ls-content"></div>
<button class="btn btn-primary col-6 mt-2" onclick="updateLsContent(1)">Up</button>
</div>
</div>
</body>
<script>
document.addEventListener('DOMContentLoaded', () => {
updateGcContent();
updateLsContent();
});
const updateGcContent = (value = 0) => {
const newState = (globalThis.myAppState || 0) + value;
globalThis.myAppState = newState;
document.getElementById('gc-content').innerText = newState;
}
const updateLsContent = (value = 0) => {
const lsKey = 'state';
const newState = parseInt(localStorage.getItem(lsKey) || 0) + value;
localStorage.setItem(lsKey, newState);
document.getElementById('ls-content').innerText = newState;
}
</script>
</html>