[英]How do you request a named module with requirejs
我想我只是缺少一些简单的东西,但是我一直在与requirejs(v2.1.14)挣扎。 假设我有一个用名称定义的模块(也许来自r.js优化器):即
// mymodule.js
define("modname", ['dep1', 'dep2', 'dep3'], function(){ ... });
如果我尝试在其他地方要求该模块,它将无法正常工作。 我试过使用
require(['../path/to/file/mymodule'], function(mod){ // mod is undefined here. }
导致mod未定义,并且
require(['modname'], function(mod){...}
哪个错误会在当前目录中查找名为modname.js的文件。 一旦我从输出中删除了define语句的模块名称部分,它就会神奇地工作。
define(['dep1', 'dep2', 'dep3'], function(mod){ // mod is defined and good here }
我是否缺少一些需要命名模块的基本信息?
如果它们不在基本目录中(或与require语句在同一文件中定义),则Require将不知道在何处查找命名模块,因此您需要添加路径条目。 您不能使用相对路径语法。
在您的配置中:
paths: {
'modname': 'path/to/mymodule',
},
优化器使用它来定义多个模块,同时将它们保存在一个文件中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.