很多都是exports,而没有继承,我想问下,exports方式有没有提供继承! 还是说继承的话要使用global来应用! 不知道大家有没有遇到需要继承的情况!
继承用**util.inherits(constructor, superConstructor)**嘛,官方文档中的例子:
var util = require("util"); var events = require("events"); function MyStream() { events.EventEmitter.call(this); } util.inherits(MyStream, events.EventEmitter); MyStream.prototype.write = function(data) { this.emit("data", data); } var stream = new MyStream(); console.log(stream instanceof events.EventEmitter); // true console.log(MyStream.super_ === events.EventEmitter); // true stream.on("data", function(data) { console.log('Received data: "' + data + '"'); }) stream.write("It works!"); // Received data: "It works!"
老雷,我恨你呀。。。为啥咱们这里没有表情呢。。。
@olddog 老狗加一个
@olddog
神马情况
这个官方的继承其实就是 js 的原型继承嘛,自己继承也是行的
exports是模块的概念,模块如何继承,只有模块内的class可以继承
把模块里的内容公布到 顶级的 prototype中即可,如 string.prototype
新代码高亮很赞啊!
var classA = require("./classa"); function classB() { classA.call(this); } util.inherits(classB, classA); classB.prototype.fun = function() { }; exports = module.exports = classB;
还可以用coffeescript,源代码看起来更简洁自然一些
哦,没看清问题 继承和export没啥冲突吧,两个概念,不就是export过来再继承?
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
继承用**util.inherits(constructor, superConstructor)**嘛,官方文档中的例子:
老雷,我恨你呀。。。为啥咱们这里没有表情呢。。。
@olddog 老狗加一个
@olddog
神马情况
这个官方的继承其实就是 js 的原型继承嘛,自己继承也是行的
exports是模块的概念,模块如何继承,只有模块内的class可以继承
把模块里的内容公布到 顶级的 prototype中即可,如 string.prototype
新代码高亮很赞啊!
还可以用coffeescript,源代码看起来更简洁自然一些
哦,没看清问题 继承和export没啥冲突吧,两个概念,不就是export过来再继承?