Tag:

Javascript实例和这个

我在node.js中写了一个小工具,这是困扰我的部分: function Active(name, options, data){ events.EventEmitter.call(this); var that = this; that.name = name; that.options = options; that.data = data; that.getData(); that.on('ActiveStart', that.createLogFile); that.on('ActiveDone', that.removeLogFile); function callback() { that.emit('ActiveDone'); } var getData = function() { // starts other processes outside of the scope of this function // callback() gets passed around and called from outside function […]

在node.js中处理`exports`的build议

理论: 其中一个吸引我关于node.js的东西是使用它作为命令行工具。 从理论上说,我可以用Javascript编写库,并将它们放在我的~/.node_libraries目录中,然后我可以重用这些库。 所以举例来说,我在~/.node_libraries有一个text.js ~/.node_libraries ,它有一堆反复使用的文本相关函数( depunctuate() , tokenize_text() )。 这样做的text.js在于,我可以使用与我的命令行脚本和服务器端相同的text.js文件。 现在我正在用Python处理所有文本处理的东西,但我只想坚持一种语言。 实践: AFAICT,为了创build一个node.js模块,我必须将所有我想要的东西都附加到exports或者this 。 也就是说,在text.js ,我必须这样做: exports.depunctuate = depunctuate 要么 this.depunctuate = depunctuate 如果我使用exports ,我在使用库服务器端àla时遇到问题: <script src=text.js></script> 因为那我得到出口没有定义的错误。 如果我使用this ,我会避免这个错误,但是我导出的所有东西都会被附加到窗口对象上。 有没有办法可以设置这些避免这两个问题的库? 例如,是否有一些方法可以包装导出导出,以便var对于节点显而易见,但是不能在服务器上的纯Javascript文件中使用。