问题标签 [requirejs]

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 投票
4 回答
2259 浏览

javascript - 是否可以使 JavaScript 模块与 NodeJS 和 RequireJS 兼容?

我一直在研究如何在 NodeJS 和浏览器应用程序中应用各种模块概念,使用 NodeJS 要求(显然是在 NodeJS 应用程序中)和 RequireJS 用于 Web 浏览器环境。

然后我突然意识到某些模块可能对客户端和服务器应用程序都有用,因此可以重用。

如何开发模块以使其与这两种环境兼容?

一种是同步的,一种是异步的。我的第一个想法是利用异步语法,然后为 NodeJS 定义一个自定义模块,它简单地同步调用异步回调。但是,如果不首先使用 NodeJS 同步回调,如何将 RequireJS-emulator 包含到跨环境模块中呢?

0 投票
1 回答
520 浏览

backbone.js - 如何将我的 JavaScript MVC 代码组织到 AMD 模块中?

我正在构建一个包含各种可视化组件的 Web 应用程序,由 Backbone.js 模型和视图组成:

例如,“PopulationVisualization 组件”可能具有:

  • 一个主模型 - 存储组件的状态
  • 几个主干视图(timesliderView、legendView 等)——监听模型的变化

所有这些组件都依赖于外部数据管理器和数据源对象,否则它们应该是解耦的。

在给定的页面上,我想实例化 PopulationVisualization 组件的一个实例。我还想监听该组件的主模型的变化,以便我可以在 URL 中序列化它的状态。

1) 如果我尝试采用 AMD 模块模式,这会是什么样子?
2) 我是制作一个或多个 PopulationVisualization 组件的模块吗?
3) 我会将模块级方法公开为 API,还是提供对内部模型和视图的直接操作?

谢谢。

0 投票
2 回答
1675 浏览

javascript - 目前哪些 JavaScript 框架支持使用 RequireJS 加载模块?

我目前正在使用 MooTools,但我想使用 RequireJS 模块加载开始一些开发。是否有任何其他框架支持开箱即用的 RequireJS 模块加载?我听说 Dojo 1.7 会,但它仍在开发中。还有其他选择吗?谢谢。

0 投票
1 回答
410 浏览

php - Requirejs 不会从 CDN 加载 jquery1.7 作为模块

我需要将 jQuery1.7 作为模块加载,我已经看到了@jrburke的这段代码:

这对我来说不是很有用,因为所有.js名称都是由服务器端生成的,我是从 php-array 获取的。

所以,我写了这个:

但是$在这个函数内部是 null 。

更新

这是我的 php 模板,它为此页面呈现我的 js 脚本:

这是我的这个页面(页面)的php-array index

0 投票
12 回答
110674 浏览

javascript - 防止 RequireJS 缓存所需的脚本

RequireJS 似乎在内部做了一些缓存所需的 javascript 文件的事情。如果我对所需文件之一进行更改,我必须重命名该文件才能应用更改。

将版本号作为查询字符串参数附加到文件名末尾的常见技巧不适用于 requirejs<script src="jsfile.js?v2"></script>

我正在寻找一种方法来防止 RequireJS 所需脚本的这种内部缓存,而不必在每次更新脚本文件时重命名它们。

跨平台解决方案:

我现在urlArgs: "bust=" + (new Date()).getTime()在开发和生产过程中使用自动缓存清除,在urlArgs: "bust=v2"推出更新的所需脚本后,我会增加硬编码的版本号。

笔记:

@Dustin Getz 在最近的回答中提到,当 Javascript 文件像这样不断刷新时,Chrome 开发者工具会在调试期间删除断点。一种解决方法是编写debugger;代码以在大多数 Javascript 调试器中触发断点。

服务器特定的解决方案:

对于可能更适合您的服务器环境(例如 Node 或 Apache)的特定解决方案,请参阅下面的一些答案。

0 投票
4 回答
30027 浏览

javascript - RequireJS 库的定义说明

我开始阅读一些关于 RequireJS 的教程。其中没有一个对我来说令人满意地解释了“定义”关键字。有人可以帮我解决以下问题:

什么是“定义”?是否定义了一个包含数组和匿名函数的函数?或者是别的什么?有人可以给我更多关于这种定义的信息吗?

补充:谢谢 nnnnnn 和 pradeek 的回答。在欧洲,当我发布问题时是晚上 2:30。也许因此我没有意识到这是一个简单的函数调用。

0 投票
3 回答
3729 浏览

javascript - NodeJS 和 Javascript (requirejs) 依赖注入

我目前正在使用 requirejs 来管理模块 js/css 依赖项。我想发现让节点通过集中配置文件执行此操作的可能性。所以不要手动做类似的事情

每个模块内。

我会让节点注入依赖项,即

无论如何,我对任何关注节点依赖注入的项目都很感兴趣。

谢谢

0 投票
1 回答
632 浏览

php - 如何访问由 require.js 异步加载的 Javascript 中的 URL 参数?

我正在使用 RequireJS 在我的应用程序中加载模块。我需要将在 index.php 中获得的 URL 参数传递给主模块。我可以看到有几种方法可以做到这一点,但如果索引中唯一的东西本质上仍然是这样的话,我更愿意:

<script type="text/javascript" data-main="scripts/main" src ="scripts/require-jquery.js"></script>

因为 RequireJS 说它更适合优化。我当前的解决方法是将原始的 require 调用放在索引文件中,并从那里使用 URL 参数。有没有更好的办法?

作为参考,我在服务器端使用 PHP,如果这有帮助的话。

0 投票
1 回答
404 浏览

javascript - RequireJS 和 JavaScript API

我正在使用这里的示例项目。

假设我需要从我的模块中导出一些函数来为我的服务的客户端提供一些 JavaScript API。

但是我的 .js 文件中的声明在 RequireJS 之外是不可见的!

我将以下块添加到 jquery-require-sample/webapp/app.html:

它失败了:Uncaught TypeError: Object [object Object] has no method 'alpha'

有可能做我想做的事吗?

0 投票
2 回答
3725 浏览

backbone.js - RequireJs 文本插件在 Chrome 中出现跨源错误

我有一些非常基本的 RequireJs 代码,可以使用简单的 html 获取 html 文件。在 Firefox 8.0 中它运行良好,但是在我构建的 Chrome (17.0.9.xxx) 中我收到以下错误:

仅 HTTP 支持跨源请求。

这可能只是这个版本的 Chrome 或一般的文本插件的问题吗?

当 Require 尝试获取 html 文件时,就会发生错误。