node-observer v0.4.4
Observer
This is an observer pattern module
Install
npm install node-observer
Example
Main file: app.js
"use strict";
var observer = require("node-observer");
var hello = require("./hello");
observer.subscribe(this, "HELLO", function(who, data) {
console.log(data);
});
hello.send();
File: hello.js
"use strict";
var observer = require("node-observer");
var Hello = function() { };
Hello.prototype.send = function() {
observer.send(this, "HELLO", "hello world!!!");
};
module.exports = new Hello();
Run
node app.js
API
subscribe(object, event, callback)
object:object, event:string, callback:function
subscribe event
unsubscribe(object, event)
object:object, event:string
unsubscribe event
send(object, event, data)
object:object, event:string, data:object
send event 'event' with data 'data'
Browser version
Under client directory there is a browser version of library. Added script tag in your html file. See the example below.
File index.html
<html>
<head>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="observer.js"></script>
<script type="text/javascript" src="app.js"></script>
<script type="text/javascript" src="mylib.js"></script>
</head>
<body>
Javascript observer pattern example: see the result in console
</body>
</html>
File app.js
$(function() {
Observer.subscribe(this, 'HELLO', function(who, data) {
console.log(data);
});
});
File mylib.js
(function(window) {
var getInstance = function() {
Observer.send(this, 'HELLO', 'Hello world!!!');
};
if (typeof(mylib) === 'undefined') {
window.mylib = getInstance();
} else {
console.log('mylib already defined.');
}
})(window);
Contributors
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago