问题标签 [amd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2023 浏览

javascript - 访问 require.js 回调的返回值

我在一个文件中定义了如下模块

这需要在另一个文件(我的主干路由器文件)中使用以下内容

我可以IndexView在路由器范围内访问返回的对象,而无需在我的应用程序的命名空间中存储引用吗?

0 投票
1 回答
501 浏览

javascript - 什么是 typescript AMD 模块,ASP MVC4 Web 应用程序需要它吗?

我开始使用 Web Essentials,我看到有一个选项“使用 AMD 模块”。我正在为 ASP MVC4 应用程序使用打字稿。有人可以解释一下 AMD 模块的全部内容吗?这是我应该知道的吗?

0 投票
1 回答
3617 浏览

module - 导入位于低于当前路径的路径中的 TypeScript 模块会引发范围错误

在尝试组合一个 AMD 友好的 TypeScript 应用程序框架时,我遇到了一个障碍:我似乎无法从当前路径下拉以在另一个目录中导入模块。我可以导入上面的模块,但下面会引发错误:

TypeScript Error: The name ''../core/View'' does not exist in the current scope

这是我的(非常基本的)应用程序的结构:

在我的Application.ts文件中,我可以成功导入一个模块,如下所示:

哪个,当使用 --module AMD 标志时,正确输出

现在,问题是当我跳入views/HomeView.js并尝试导入我的core/ViewBaseClass 以从以下位置扩展时:

这引发了这个完整的错误:

这是编译器中的错误,还是我对模块导入的理解有误?为什么我可以导入views/HomeView,但不能../core/View

任何帮助将不胜感激。

0 投票
6 回答
10457 浏览

javascript - 同时支持 CommonJS 和 AMD

有没有办法创建一个支持以下所有模块格式的javascript微库(一个没有依赖关系的库):

  • 异步模块定义
  • CommonJS
  • 将库的导出公开为全局命名空间对象(无加载器)
0 投票
1 回答
142 浏览

javascript - 是否可以使用 require.js 将非模块 *.js 文件设置为依赖项

我们不使用 require.js 在 js 源代码上实现模块,但我想将它用于测试。还有一个问题:我无法实现原始 *.js 文件作为其他模块的依赖项。是否可以?

我的意思是:在它之后加载一些 *.js 文件和模块(以测试它)。

0 投票
1 回答
863 浏览

javascript - SlickGrid 使用 AMD 污染全局命名空间

我正在尝试将 SlickGrid 导入我的应用程序...但即使我使用 AMD 加载模块,它也会将自身附加到窗口

有没有办法使用 Shim 配置来避免污染命名空间。另一个问题可能是 SlickGrid 依赖项将在全局命名空间中寻找它。

想法会很棒。

有我当前的 Shim 配置以及我正在使用网格的模块

0 投票
1 回答
269 浏览

module - 在错误位置查找模块的代码

我使用 build.dojotoolkit.org(我的第一次尝试)创建了一个具有 3 层的多层构建:dojo.js、dojox.js、dijit.js。每个 js 文件都上传到自己的文件夹中(dojo、dojox、dijit)。

当我运行代码时,我希望它在 dijit.js 中查找以获取像 dijit.form.TextBox 这样的表单模块。但相反,它会尝试加载 dijit/form/TextBox.js,当然最终会出现 404 错误。

我究竟做错了什么?

如果有帮助,文件就在这里:http: //usermanagedsolutions.com/Demos/Pages

0 投票
3 回答
1946 浏览

javascript - BreezeJS 和 RequireJS 没有按预期工作

我正在将breathJS 集成到一个已经使用knockoutJS 的现有requireJS 项目中。我遇到了几个问题。

首先是微风无法加载 Q 库,除非我将它作为<script>标签包含在我的 html 包装器中,而不是作为加载的 AMD 依赖项。在我的项目中,我试图将我的代码保留为单个脚本标记,所以这并不理想。

第二个问题是breezeJS 无法加载淘汰赛。在我的 main.js 中,我定义了淘汰赛的路径:

knockout: '../libs/knockout/knockout-2.2.0',

(我这样做是因为我喜欢确定我没有访问 global ko

然而,当我在我的项目中添加微风时,微风无法加载我的淘汰赛库。查看微风代码,我可以看到它已被硬编码为将淘汰赛库加载为ko.

不想更改我的所有代码,我发现我可以将我加载的 AMD 淘汰赛库添加到全局窗口对象中window['ko']。但这感觉就像一个障碍。同样奇怪的是,以这种方式添加 Q 并删除<script>标签不起作用,因为我认为 Q 在应用程序的生命周期中为时过早,甚至在我污染全局之前 - 我确实将我的require()调用嵌套在 main.js 中,但隐藏了我的大部分应用程序文件都来自构建过程,所以我放弃了这种方法。

我怎样才能在我的项目中包含 Q 和淘汰赛和微风,并且仍然使用单行<script>标签,目前我不得不将 Q 作为单独的<script>标签包含并污染全局以使微风和淘汰赛能够很好地发挥作用。

我在我的项目中使用了很多其他库,但没有一个库那么难集成。

任何帮助深表感谢

干杯

加夫

编辑:这是我的完整需求配置:

0 投票
2 回答
2897 浏览

javascript - Require.js 加载谷歌地图和它的 Richmarker 扩展的问题

我目前正在尝试使用 require.js 模块定义和依赖处理程序加载 Google 地图库及其扩展RichMarker 。

我已经声明了 Google Maps 模块和扩展的路径,如下所示:

google_maps 模块看起来像

最后,使用谷歌地图库和高级标记扩展的模块定义如下:

然而,googlemap 正确地启动了加载,但我在控制台中收到有关 Richmarker 扩展的错误:

我在哪里做错了?谢谢您的帮助。

0 投票
2 回答
3605 浏览

javascript - 在 Requirejs 中使用 Meteor

如何将 requirejs 集成到流星应用程序中并使用 AMD 模块,例如用于我的 Backbone 模块?有没有人这样做并且可以告诉我需要哪些步骤才能使其正常工作?