MVCClass
This is an extended class of MVCObject.
What does 'mvcclass = mvcobject + events' mean?
@Treri creates MVCObject, this is great, and I appreciate for his work.
But he does not implement the "addEventListener" method. And I wanted to use similar methods, such as "on()", "once()", "emit()", and so on, so I decided to extend the MVCObject class.
Mechanism
You can use set(key, value)
and get(key)
methods basically.
Set a new value with set(key)
method, you can catch the event named (key)_changed
.
var mvcclass = ; var myClass = ; myClass; myClass;
Because of inheriting EventEmitter2 module, you can also use as event emitter.
myClass; myClass;
Example1 : Catch the events when values are changed.
var mvcclass = ; var myClass = 'value1': 'Hello World' 'value2': 3; var { console;}; myClass;myClass; myClass;myClass; // Outputs//// --> eventName: value1_changed, newValue: Welcome!// --> eventName: value2_changed, newValue: 18
Example2: Catch all events with wildcard
var myClass = 'wildcard': true // wildcard, delimiter, 'delimiter': '_' 'value1': 'Hello World' 'value2': 3; var { console;}; myClass; myClass;myClass; // Outputs//// --> eventName: value1_changed, newValue: Welcome!// --> eventName: value2_changed, newValue: 18
Example3: Set multiple values at once.
setValues(object)
method allows you to set JSON Object as key-value
pairs.
var { console;}; myClass; myClass; // Outputs//// --> eventName: value1_changed, newValue: Welcome!// --> eventName: value2_changed, newValue: 18
Example4: Bind a property to another object.
bindTo()
method sets the value that stored into the class to another object.
var myClass = 'enable': true; // anotherObject.enable = myClass.enablevar anotherObject = ;myClass; anotherObject; myClass; // Outputs//// --> (anotherObject) enable = false
Methods
See MVCObject and EventEmitter2.
Change logs
- version 0.1.2 Use EventEmitter2 instead of events internally.
You can get the event name with this.event
in event listeners.