JSFiddle - React, Tailwind, and code Playground
by Proger
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/underscore.js/1.7.0/underscore-min.js"></script>
<script src="http://squizzle.me/js/sqimitive/sqimitive.min.js"></script>
CSS
pre { white-space: pre-wrap; }
JavaScript
var MyBase = Sqimitive.Sqimitive.extend({
_opt: {
base: 123,
base2: 'kept',
complex: {a: 1},
},
})
var MyChild = MyBase.extend({
_opt: {
// Заменит 123.
base: 'replaced',
// Целиком заменит {a: 1} - объекты объединяются только на первом уровне.
complex: {b: 2},
// Добавит новый ключ в _opt.
child: 'new',
// base2 - останется.
//base2: 'kept',
},
})
$('<pre>').text(JSON.stringify((new MyChild).get()).replace(/,/g, ', ')).appendTo('body')