jjzjj

requirejs

全部标签

javascript - 将 requireJS 模块暴露给全局命名空间的正确方法是什么?

我想将JavascriptAPI作为独立库公开,而不污染其全局命名空间。我已经创建了包装器,所以我不会根据http://requirejs.org/docs/faq-advanced.html污染他们自己的requireJS.我已经简化了目前为止的内容,但我不确定这是否是正确的方法,或者我是否应该以其他方式进行。varMyApi=MyApi||{};varMyApiRequireJS=(function(){//require.jspastedherereturn{requirejs:requirejs,require:require,define:define};})();(func

javascript - require (require.js) 的多个实例可以很好地协同工作吗

我想我需要在一个页面中支持多个require实例,但在实现它时遇到了两个问题。我正在开发一项服务,该服务向外部客户端页面提供可嵌入的交互式对象。最重要的设计标准是易于嵌入,尽可能少地假设客户端环境,并在客户端页面的js/css世界中很好地发挥作用。客户端在他们的页面上添加一个脚本标签来加载加载器,然后他们使用一个内联脚本来加载他们想要的内容:special_require(["loader"],function(loader){loader.load({object:"objectname",target:"#where-i-want-it"//otherconfigsettings}

javascript - 使用 CDN jQuery 的 Require.js 构建 (r.js) 未链接到良好的 jQuery 路径

我有一个使用Require.jsforAMD的Backbone应用程序。我正在从GoogleCDN加载jQuery,但在构建之后,jQuery的路径似乎被破坏了。构建过程没有任何问题或错误。但是一旦我使用构建版本,jQuery就会使用这个URL添加到页面:http://example.com/assets/js/jquery.js而不是CDNurl。我觉得这是因为我的路径配置丢失了,并且需要对“jquery”的依赖不被视为对路径的引用,而是作为对脚本的正常调用。这是我的主文件:ma​​in.jsrequire.config({baseUrl:'/assets/js/',paths:{u

javascript - 要求使用 AMD 模式为 jQuery UI 事件提供错误

在我的代码中,test.js依赖于不使用requireAMD模式的jquery-ui,而test.spec.js依赖于使用AMD模式的jquery-ui、test.js。运行test.spec.js时能否在test.js中动态加载jquery-ui的依赖。require.config({baseUrl:'/demo',paths:{'jquery':'../library/jquery-1.11.1','jquery-ui':'../library/jquery-ui-1.11.4'},shim:{'jquery':{exports:'jQuery'},'jquery-ui':{dep

javascript - RequireJS 优化器配置问题,bbb 版本

我正在使用RequireJS、带布局管理器的主干样板、JamJS来帮助管理包,并且在开发中一切正常,但是当我尝试创建一个包含串联文件的生产版本时,它不起作用。看起来我的配置中的shim可能没有加载。例如,我在控制台中收到的错误是UncaughtTypeError:Cannotsetproperty'cookie'ofundefined,因此jQuery不会作为jquery.cookie的依赖项加载。这是我的应用配置://Settherequire.jsconfigurationforyourapplication.require.config({//Initializetheappli

javascript - Dojo require,模块加载失败时连接报错

当我尝试加载不存在的模块时,它失败并显示404错误(当然)。我想处理这个错误,但不知道如何连接到“错误”事件。根据Dojo文档,我应该可以使用itsmicroeventapi来做到这一点.此代码无效。varhandle=require.on('error',function(error){alert('Finallyerror')});require(['nonexistent/module'],function(m){alert('Modulewasloadedcorrectly')});Dojo版本为1.7.1,浏览器最新Chrome。 最佳答案

javascript - Backbone 和 RequireJS 有效加载

我在互联网上看了很多如何开始使用requireJS开发BB应用程序的示例,但我有点迷茫。我认为AMD的目标是仅在文件确实需要时才加载它们。不早了。为什么我只看到开发人员将几乎所有文件作为依赖项放在他/她的主文件开头的示例?举个例子:https://github.com/jcreamer898/RequireJS-Backbone-Starter/tree/master/js此应用程序立即加载main.js,它依赖于app.js,它加载routers/home.js,它需要views/view.js,它加载View的模板和models/model.js,它......并结束。我看不出如何

javascript - 如何解决 Require.js 中的循环依赖?

基本上,想法是“子”模块创建一个对象,该对象应该是作为“主”模块的实用程序库的一部分。但是,“子”对象依赖于来自“主”的实用程序://Mainmoduledefine(['sub'],function(sub){varutils={utilityMain:function(){//...};//...};tools.subModule=sub;returntools;});//Submoduledefine(['main'],function(main){returnnew(function(){//Singletonobjectusingfunctionsinmainmoduleva

javascript - 主干 View 无法使用 requirejs 扩展

我熟悉构建主干应用程序,但我正在尝试将其转换为使用requirejs,我面临的问题是当我尝试扩展父View时,它是undefined当尝试将base-view.js扩展到properties-view.js时define(['backbone','underscore','jquery','views/node/base-view'],function(Backbone,_,$,NodeBaseView){PropertiesView=NodeBaseView.extend({});}});在父基础View中实例化一个subviewdefine(['backbone','undersc

javascript - 具有 RequireJS : anti-pattern? 的单例主干模型

我有一个模型需要被多个View访问,为了在模型模块的定义中完成这个,我立即像这样实例化它:define(['jquery','underscore','backbone'],function(_,Backbone){varFoo=Backbone.Model.extend({//wondrousmethodsandproperties});returnnewFoo();});我真的只需要这个模型的一个实例——现在就是这样。据我所知,解决方法是有一个单独的App模块。像这样的东西:define([],function(){varApp={routers:{},models:{},view