尝试官方示例代码时未定义变量 "module"

variable "module" is not defined when trying an official example code

我将示例代码复制到我的编辑器中,保存后它不起作用(惊喜 :))

我不得不修改它,因为它能按预期工作,我完全不知道为什么我修改后它还能工作。

我遵循了 http://browserify.org/ 教程。

main.js 适合我

require.config({
    paths: {
        "uniq": "../node_modules/uniq/uniq"
    }
});

define(function (require) {
    var unique = require('uniq');
    var data = [1, 2, 2, 3, 4, 5, 5, 5, 6];
    console.log(unique(data));
});

这是 uniq.js 我修改过的: http://paste2.org/5465mVUF

原来的:http://paste2.org/wY7wP6pB

我唯一做的就是将所有 uniq.js 代码包装在一个 define() 包装器

的匿名函数中
define(function (require, exports, module) {
    //uniq.js code here...
});

我的问题是为什么?我做错了什么?

您必须决定只使用一个模块加载器:browserify 或 requirejs。你不能同时使用两者。

当您想使用 browserify 时,请不要使用 definerequire.config

当您想使用 requirejs 时,请不要使用 nodejs 包。使用特定于浏览器的包,例如bower.