Mobx extendObservable example
Shows mobx's observable feature author(s): Matt Ruby
by Matt Ruby
HTML
<div id="react-log"></div>
<script src="https://cdn.jsdelivr.net/g/[email protected](react.min.js+react-dom.min.js),[email protected]"></script>
<script src="https://unpkg.com/[email protected]/lib/mobx.umd.min.js"></script>
<script src="https://unpkg.com/[email protected]/index.js"></script>
<script src="https://rawgit.com/mattruby/mobx-examples/master/logging-utils.js"></script>
<script>
wrapConsole();
</script>
JavaScript
var person = mobx.observable({
names: [],
names2: [{
foo: 'Matt'
}]
});
mobx.autorun(function() {
console.log('will fire: ' + person.names);
});
mobx.autorun(function() {
console.log('wont fire: ' + person.names2);
});
mobx.autorun(function() {
_.forEach(person.names2, function(name) {
console.log('Whats foo ? : ' + name.foo);
});
});
person.names.push('Ruby');
person.names.push('Red');
person.names.push('Matt');
person.names2[0].foo = 'test';