This library provides the
@BindObservable() decorator, which binds a property to a observable companion property. The companion Observable always emits the latest value of the bound property.
npm install bind-observable --save
The following code binds the property
myProp to the observable property
myProp$ and prints two values (
'newValue') to the console.
;myInstance.myProp$.subscribeconsole.log;myInstance.myProp = 'newValue'
This decorator adds property accessors to the
PropertyDescriptor of the decorated property. It will emit the getter value after every underlying setter call. You can use the
emitRawSetterValue option to emit the raw setter value and not a value, which is possibly modified by underlying setter and getter calls.
The decorator will also emit initial property values only if these values are explictly defined. In the following example the observable
initializedProp$ does emit a
undefined value. On the other hand
uninitializedProp$ will emit its first value on the first assignment.
;// Prints nothing to the consolemyInstance.uninitializedProp$.subscribeconsole.log;// Prints 'undefined' to the consolemyInstance.initializedProp$.subscribeconsole.log;
This decorator does not work if used directly on property accessors, but it can be used together with other decorators which add accessors to the