Add computed to propertyConfig, rename bind->observers. Remove published BC.

This commit is contained in:
Kevin Schaaf
2015-03-02 15:41:23 -08:00
parent 7005e758a5
commit bee4ee4285
20 changed files with 259 additions and 278 deletions

View File

@@ -4,18 +4,29 @@
<script>
Polymer({
is: 'x-basic',
published: {
propertyConfig: {
value: {
observer: 'valueChanged'
},
computedvalue: {
computed: 'computeValue(value)',
observer: 'computedvalueChanged'
},
notifyingvalue: {
type: Number,
notify: true
notify: true,
computed: 'notifyingvalueChanged'
},
computednotifyingvalue: {
type: Number,
notify: true
notify: true,
computed: 'computeNotifyingValue(notifyingvalue)'
},
computedFromMultipleValues: {
type: Number,
notify: true
notify: true,
computed: 'computeFromMultipleValues(sum1, sum2, divide)',
observer: 'computedFromMultipleValuesChanged'
},
camelNotifyingValue: {
type: Number,
@@ -24,20 +35,12 @@
readonlyvalue: {
type: Number,
readOnly: true,
notify: true
notify: true,
observer: 'readonlyvalueChanged'
}
},
computed: {
computedvalue: 'computeValue(value)',
computednotifyingvalue: 'computeNotifyingValue(notifyingvalue)',
computedFromMultipleValues: 'computeFromMultipleValues(sum1, sum2, divide)'
},
bind: {
value: 'valueChanged',
computedvalue: 'computedvalueChanged',
notifyingvalue: 'notifyingvalueChanged',
readonlyvalue: 'readonlyvalueChanged',
computedFromMultipleValues: 'computedFromMultipleValuesChanged'
observers: {
'dep1 dep2 dep3': 'multipleDepChangeHandler'
},
valueChanged: function() {},
computeValue: function(val) {
@@ -52,7 +55,8 @@
computeFromMultipleValues: function(sum1, sum2, divide) {
return (sum1 + sum2) / divide;
},
computedFromMultipleValuesChanged: function() {}
computedFromMultipleValuesChanged: function() {},
multipleDepChangeHandler: function() {}
});
</script>
@@ -75,7 +79,7 @@
<script>
Polymer({
is: 'x-compose',
bind: {
observers: {
boundvalue: 'boundvalueChanged',
boundnotifyingvalue: 'boundnotifyingvalueChanged',
boundcomputedvalue: 'boundcomputedvalueChanged',
@@ -94,7 +98,7 @@
<script>
Polymer({
is: 'x-reflect',
published: {
propertyConfig: {
reflectedobject: {
type: Object,
reflect: true