当前位置:  开发笔记 > 编程语言 > 正文

m.add不是函数(新节点js模块)

如何解决《m.add不是函数(新节点js模块)》经验,为你挑选了1个好方法。

我是节点js的新手,并创建模块如下.我得到的是m.add不是Object.anonymous的函数

Module.js

(function(exports, require, module, __filename, __dirname) {
    exports.add = add;
    exports.multiply = multiply;

    function add(number1, number2) {
        return parseInt(number1, 10) + parseInt(number2, 10);
    }

    function multiply(number1, number2) {
        return parseInt(number1, 10) * parseInt(number2, 10);
    }
});

App.js

var m = require('./module');

console.log(m.add(3, 5));
console.log(m.multiply(4, 5));

Andy.. 6

不确定为什么要包装这样的代码,但这里module.js应该看看:

function add(number1, number2) {
  return parseInt(number1, 10) + parseInt(number2, 10);
}

function multiply(number1, number2) {
  return parseInt(number1, 10) * parseInt(number2, 10);
}

// don't export your functions individually
// export them on an object (which is how you use them in your app)
module.exports = {
  add: add,
  multiply: multiply
}

如果你愿意,你可以同时为你的函数执行各项出口(如你有你的 module.js),但它并不像你需要太多.



1> Andy..:

不确定为什么要包装这样的代码,但这里module.js应该看看:

function add(number1, number2) {
  return parseInt(number1, 10) + parseInt(number2, 10);
}

function multiply(number1, number2) {
  return parseInt(number1, 10) * parseInt(number2, 10);
}

// don't export your functions individually
// export them on an object (which is how you use them in your app)
module.exports = {
  add: add,
  multiply: multiply
}

如果你愿意,你可以同时为你的函数执行各项出口(如你有你的 module.js),但它并不像你需要太多.

推荐阅读
罗文彬2502852027
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有