javascript - m.add 不是函数(新 Node js 模块)

标签 javascript node.js

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

模块.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));

最佳答案

不确定为什么要这样包装代码,但 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),但它不会看起来你也需要。

关于javascript - m.add 不是函数(新 Node js 模块),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34471127/

相关文章:

javascript - onClick() 执行功能?

node.js - 使用 vue cli webpack 后如何部署 Vue 应用

javascript - 正则表达式去除尾随现金标签/主题标签

javascript - 仅当 anchor 尚未存在时,正则表达式才用 anchor 替换网址

javascript - MongoDB:如何在同一数据库中搜索多个集合并返回混合结果集?

node.js - Google Search Console API : How do I Solve "User does not have sufficient permission for site"?(当用户有权限时)

node.js - expressjs发帖时出现403 forbidden错误

javascript - 使用 node js 执行命令行

javascript - 是否有一个 Node 模块可以将项目编译为客户端文件?

javascript - Plain Vanilla JavaScript - 重置所有元素的外观