当前位置 : 主页 > 网页制作 > Nodejs >

从Node.js公开方法的最佳方法是什么?

来源:互联网 收集:自由互联 发布时间:2021-06-16
考虑我想要公开一个名为Print的方法 绑定方法作为原型: 文件保存为Printer.js var printerObj = function(isPrinted) { this.printed = isPrinted; }printerObj.prototype.printNow = function(printData) { console.log('= Pri
考虑我想要公开一个名为Print的方法

>绑定方法作为原型:

文件保存为Printer.js

var printerObj = function(isPrinted) {
            this.printed = isPrinted;        
    }

printerObj.prototype.printNow = function(printData) {
        console.log('= Print Started =');
};
module.exports = printerObj;

然后通过在任何外部.js节点程序文件中放入代码require(‘Printer.js’).printNow()来访问printNow().

>使用module.exports导出方法本身:

文件保存为Printer2.js

var printed = false;   
function printNow() {
console.log('= Print Started =');
}    
module.exports.printNow = printNow;

然后通过在任何外部.js节点程序文件中放入代码require(‘Printer2.js’).printNow()来访问printNow().

任何人都能说出与Node.js有什么区别和最佳方式吗?

绝对是第一种方式.它被称为子包模式,您可以在 Twitter和Mikeal Rogers的 blog上阅读它.有些代码示例可以在解析器的 jade github repo找到:

var Parser = exports = module.exports = function Parser(str, filename, options){
  this.input = str;
  this.lexer = new Lexer(str, options);
  ...
};

Parser.prototype = {

  context: function(parser){
    if (parser) {
      this.contexts.push(parser);
    } else {
      return this.contexts.pop();
    }
  },

  advance: function(){
    return this.lexer.advance();
  }
};
网友评论