Javascript module.exports和require

时间:2017-01-11 06:31:02

标签: javascript

我正在使用npm进行项目,我想知道如何在我的项目中实现这一点。我看到了一些像这样的代码示例

   function lazyCache(fn) {
      var cache = {};
      var proxy = function(mod, name) {
        name = name || camelcase(mod);

        // check both boolean and string in case `process.env` cases to string
        if (process.env.UNLAZY === 'true' || process.env.UNLAZY === true || process.env.TRAVIS) {
          cache[name] = fn(mod);
        }

        Object.defineProperty(proxy, name, {
          enumerable: true,
          configurable: true,
          get: getter
        });

        function getter() {
          if (cache.hasOwnProperty(name)) {
            return cache[name];
          }
          return (cache[name] = fn(mod));
        }
        return getter;
      };
      return proxy;
    }

  module.exports = lazyCache;

在另一个js文件中

  var om = require('lazyCahe');

如何在我自己的项目中实现这个?

  project 
     index.html
     om.js
     am.js

om.js

  var om = function() {
      console.log("oh my om");
  }

  module.exports = om;

am.js

  var am = require('om');


  (index):10 Uncaught ReferenceError: require is not defined

但是如果查看节点模块中的一些代码示例,例如laravel-elixir npm包,它没有显示如何配置'require'。

1 个答案:

答案 0 :(得分:0)

此说明来自NodeJS,浏览器不知道它。如果你想要像这个例子中的导出和导入模块,你应该使用rollup.js或webpack.js构建你的应用程序