How to use YUI3 on node?
I can't get YUI3 to work on node.
I have installed all dependencies according to this site: http://github.com/yui/nodejs-yui3.
Here is my code:
var jsdom = require("jsdom").jsdom,
window = jsdom("<html><head></head><body>hello world</body></html>").createWindow();
var puts = require("sys").puts;
var YUI = require("yui3").YUI;
var person = {
name: "Ajsie",
age: 25,
greet: function() {
puts("Hello World! My name is " + this.name + " and I am " + this.age + " years old")
}
}
result = YUI.Object(person);
puts(result);
Here is the output on terminal:
node.js:50
throw e;
^
TypeError: Object function () {
var i = 0,
Y = this,
args = arguments,
l = args.length,
gconf = (typeof YUI_config !== 'undefined') && YUI_config;
if (!(Y instanceof YUI)) {
Y = new YUI();
} else {
// set up the core environment
Y._init();
if (gconf) {
Y.applyConfig(gconf);
}
// bind the specified additional modules for this instance
if (!l) {
Y._setup();
}
}
if (l) {
for (; i < l; i++) {
Y.applyConfig(args[i]);
}
Y._setup();
}
return Y;
} has no method 'Object'
at Object.<anonymous> (/Volumes/Private/ajsie/Projects/icdev/javascript/node/object.js:15:14)
at Module._compile (node.js:324:23)
at Object..js (node.js:332:12)
at Module.load (node.js:254:25)
at Object.runMain (node.js:346:24)
开发者_运维技巧 at Array.<anonymous> (node.js:595:12)
at EventEmitter._tickCallback (node.js:42:22)
at node.js:607:9
It says "has no method "Object".
What is the problem?
The code should look like this:
var jsdom = require("jsdom").jsdom,
window = jsdom("hello world").createWindow();
var puts = require("sys").puts;
var YUI = require("yui3").YUI;
YUI().use(function(Y){
var person = {
name: "Ajsie",
age: 25,
greet: function() {
puts("Hello World! My name is " + this.name + " and I am " + this.age + " years old");
}
}
var result = Y.Object(person);
puts(result);
});
精彩评论