繁体   English   中英

如何使用requirejs请求命名模块

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM