35 lines
947 B
HTML
Executable file
35 lines
947 B
HTML
Executable file
<head>
|
|
<script src="//unpkg.com/data-joint"></script>
|
|
<!--<script src="../dist/data-joint.js"></script>-->
|
|
</head>
|
|
<body>
|
|
<script>
|
|
const myView = new Set();
|
|
|
|
digest([{ id: 0, val: 2 }, { id: 1, val: 4 }, { id: 2, val: 7 }]);
|
|
digest([{ id: 1, val: 4 }, { id: 2, val: 3 }, { id: 3, val: 9 }]);
|
|
console.log('final data', [...myView]);
|
|
|
|
function digest(data) {
|
|
dataJoint(data, [...myView],
|
|
obj => myView.add(obj), // append obj
|
|
obj => myView.delete(obj), // remove obj
|
|
{
|
|
createObj: (d) => {
|
|
console.log('createObj', d);
|
|
return {};
|
|
},
|
|
updateObj: (obj, d) => {
|
|
obj.double = d.val * 2;
|
|
console.log('updateObj', obj, d);
|
|
},
|
|
exitObj: obj => {
|
|
obj.double = 0;
|
|
console.log('exitObj', obj);
|
|
},
|
|
idAccessor: d => d.id
|
|
}
|
|
);
|
|
}
|
|
</script>
|
|
</body>
|