c5_labsci/web/admin/demo/front/demo_proxy.html
2026-01-27 00:52:00 +08:00

41 lines
1.1 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<body>
<div style="position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);">
<button>累加器</button> <span>累加: --</span>
</div>
<script>
const btn = document.querySelector('button');
const span = document.querySelector('span');
btn.addEventListener('click', function () {
data.span.cnt += 1;
console.log(data.span);
console.log(data);
});
var data = {};
data.fff = "asdf";
data.span = {};
data.span = new Proxy(data.span, {
get: function (target, property, receiver) {
console.log('get', target, property, receiver);
return target[property];
},
set: function (target, property, value, receiver) {
console.log('set', target, property, value, receiver);
target[property] = value;
span.innerText = `累加: ${target[property]}`;
return true;
}
});
data.span.cnt = 0;
</script>
</body>
</html>