我正在使用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'。
答案 0 :(得分:0)
此说明来自NodeJS,浏览器不知道它。如果你想要像这个例子中的导出和导入模块,你应该使用rollup.js或webpack.js构建你的应用程序