Tag: requirejs

requireJS中的全局变量

可能重复: 如何在使用AMD时加载Backbone.js中的自举模型(require.js) 这是一个关于我的问题的简单演示。 我需要访问main.js文件中的main.js 。 我的问题是,在这种情况下如何避免全局变量? 为此目的使用全局变量是不好的做法吗? main.js require({ paths : { jQuery : ‘http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min’ } }); require([ ‘jQuery’ ], function() { alert(id_user); }); 的index.php function users() { id_user = } users();

Backbone / RequireJS嵌套列表中的循环依赖

我在Backbone中使用RequireJS设置了一个嵌套的类别结构。 在此结构中,类别集合包含类别模型,单个类别模型可以包含类别集合。 不幸的是,这似乎导致RequireJS中可怕的循环依赖问题。 我已经阅读了关于RequireJS的文档( http://requirejs.org/docs/api.html#circular )但是我发现’a’和’b’的解释令人困惑。 这是我的代码,导致问题: define([ “jquery”, “underscore”, “backbone”, “collections/categories” ], function( $, _, Backbone, CategoriesCollection ) { var Category = Backbone.Model.extend({ defaults: { title: “Untitled” }, parse: function(data) { this.children = new CategoriesCollection( data.children, {parse: true} ); return _.omit( data, “children” ); } }); return Category; }); … define([ “jquery”, “underscore”, “backbone”, […]

使用require.js加载Highcharts

我已经尝试了一段时间,但没有成功将加载高图作为require模块。 我想知道是否有人设法让这个工作,或者他们是否有任何指示让我走上正确的轨道? 谢谢

jQuery和AngularJS没有合作

我正在使用RequireJS和Angular,但他们在我的设置中没有合作。 当jQuery版本是1.7.2时,事情很好。 但是我想使用jQuery 1.8.1和jQuery UI和角度应用甚至无法用这个初始化我的主模块。 这是问题所在: 区分大小写的变量:jQuery和jquery。 在jquery 1.8.1源代码中,最后他们定义了window.jQuery。 在早期版本1.7.2中定义了window.jquery。 因为我想在我的应用程序中使用jQuery UI包含文件jquery-ui-1.8.23.custom.min.js。 包含它之后我得到了“jQuery”未定义的错误。 所以,我决定升级我的jQuery版本并下载了所说的1.8.1版本。 接近jQuery源代码的末尾,我可以看到这个版本定义了window.jQuery(jQuery UI需要的正确案例)。 我用James Burke github项目更新了我的require-jquery JS和最新版本,并用jquery 1.8.1更新了它。 但是包括更新的jQuery / RequireJS项目,angularjs已停止工作。 我在Chrome控制台中收到此错误: 如果我恢复到1.7.2角度工程。 或者,如果我编辑jQuery文件来定义window.jquery而不是window.jQuery(注意案例)它再次起作用。 但这意味着jQuery UI不会。

如果已经在页面上,则使requireJs不重新加载jQuery

我正在编写一个脚本,旨在嵌入第三方网站以向其添加function。 我最近撕掉了我相当混乱的自定义加载器代码并开始用requirejs替换它。 其中一个可选地为我加载的库(取决于传入的一些参数)是jQuery。 这很好用,直到我的脚本包含在jQuery已经打开的页面上,在这种情况下,似乎发生了一些插件中途加载,requirejs在页面版本上加载jQuery,插件立即中断。 要求客户重写他们的页面只是为了使用这个脚本是不可能的,所以我想做的是检测jQuery是否已经加载,如果是,跳过通过requirejs加载它,并只使用已经加载的(当他们使用更旧版本的jQuery时,这可能会让我遇到奇怪的边缘情况和错误,但我没有太多选择)。 我想我会做的是编写一个新模块,首先看看是否加载了jQuery,如果是,只需导出jQuery对象,如果不是,则加载它,然后进行导出。 但是,我似乎受到了阻碍,因为模块的定义函数似乎需要同步工作,所以我不能去加载另一个脚本,这将是异步的,然后将导出填充到requirejs中。 我在文档中遗漏了什么吗? 我正在尝试不可能的事情吗?

内联需要调用requireJS配置,该调用遵循加载我的应用程序的脚本标记

我正在使用requireJS,我想从中访问一个特定的模块。 不幸的是,我总是收到404消息,说明找不到该模块。 我在路径配置所在的js文件中包含如下: 我的app.js看起来像这样: define(‘jquery’, [], function() { return jQuery; }); requirejs.config({ baseUrl: ‘/js/shop2/springen/’, paths: { ‘lodash’: ‘vendor/lodash.min’, ‘Functions’: ‘app/modules/functions’, ‘Search’: ‘app/modules/search’, ‘Comparison’: ‘app/modules/comparison’, ‘Globals’: ‘app/globals’, ‘Init’: ‘app/init’, … } }); // globals get loaded first and are available to all subordered scripts require([‘Globals’, ‘lodash’], function () { $(document).ready(function() { if ($(‘#comparison’).length) { require([‘Comparison’], function […]

如何通过浏览器js控制台触发的require.js重新加载文件

在初始应用程序启动时由require.js加载文本文件(下划线模板): define([‘text!templates/template.html’], function(Template){ … }; 当我现在正在更改此文件并希望重新加载该单个文件而不必重新加载整个页面并重新启动整个应用程序时,这可能吗? 我想从浏览器的javascript控制台触发这个。 用例是通过require.js加载下划线模板的场景,当对其中一个模板文件进行更改时,我可以轻松地将新文件“注入”到正在运行的应用程序,手动触发视图渲染方法并查看更改而不必从一开始就重新加载一切。 谢谢你的想法。

jQuery源代码使用Require.js,但最终文件没有?

未压缩的jQuery文件: http : //code.jquery.com/jquery-2.0.3.js jQuery源代码: https : //github.com/jquery/jquery/blob/master/src/core.js 他们做了什么让它看起来像最终输出没有使用引擎盖下的Require.js? Require.js示例告诉您将整个库插入代码中,使其作为单个文件独立运行。 Almond.js,一个较小版本的Require.js也告诉你将自己插入你的代码中以获得一个独立的javascript文件。 当缩小时,我不关心额外的膨胀,它只是一些额外的killobytes(对于almond.js),但是没有明确的几乎没有可读性。 我必须一直向下滚动,通过almond.js代码来查看我的应用程序逻辑。 题 如何使我的代码与jQuery类似,其中最终输出看起来不像Frankenweenie?

Require.js bug random无法加载资源

我的应用程序使用require.js,我有一个随机的bug(50次重载时发生1次)Require.js在控制台中写入: 无法加载资源:服务器响应状态为404(未找到) 确实,require.js尝试从错误的目录中包含jquery …我不知道为什么,大多数时候应用程序工作正常… 我的配置非常简单: require.config({ shim: { underscore: { exports: ‘_’ }, backbone: { deps: [‘underscore’, ‘jquery’], exports: ‘Backbone’ }, animate_from_to: { deps: [‘jquery’] }, bootstrap: { deps: [‘jquery’] }, zoom: { deps: [‘jquery’] }, shop_util: { deps: [‘jquery’] }, pricer: { deps: [‘jquery’] }, filter: { deps: [‘jquery’] }, paginator: { deps: [‘jquery’] […]

使用requirejs和jquery,而不是破坏全局jquery?

我第一次在项目中使用requirejs。 我正在一个已经有很多Javascript的环境中工作,我正在寻找干净的方法来介绍我自己的代码。 我遇到的问题是我似乎无法找到我可以加载的jQuery模块,它不会破坏现有的jQuery。 我很惊讶即使require-jquery.js引入了jQuery的全局版本。 有没有办法加载jQuery作为模块而不引入任何全局变量?