JSFiddle - React, Tailwind, and code Playground
HTML
<input id="foo"></div
JavaScript
function bindModelInput(obj, property, domElem) {
Object.defineProperty(obj, property, {
get: function() { return domElem.value; },
set: function(newValue) { domElem.value = newValue; },
configurable: true
});
}
user = {};
inputElem = document.getElementById("foo");
bindModelInput(user,'name',inputElem);
user.name = "Joe";
alert("input value is now "+inputElem.value);
inputElem.value = 'Bob';
alert("user.name is now "+user.name);