Tag: requirejs

在Play 2.3.x应用程序中使用sbt-rjs优化WebJars中的JS

是否有可能通过WebJars有一个Play 2.3应用程序concat /优化JS(使用sbt-rjs)包含在我的应用程序中? 举一个具体的例子:我试图创build一个core.js模块,其中包含所有我的第三方库连接和缩小在一个单一的文件,然后可以指定为其他AMD模块的依赖。 通过WebJars包含这些库会非常好,而不是手动下载源代码。 这里是我的build.sbt文件中的一个片段,我指定了我的webjar依赖关系: // Webjars libraryDependencies ++= Seq( "org.webjars" % "requirejs" % "2.1.15", "org.webjars" % "underscorejs" % "1.7.0", "org.webjars" % "jquery" % "1.11.1", "org.webjars" % "bootstrap" % "3.3.1" exclude("org.webjars", "jquery"), "org.webjars" % "angularjs" % "1.3.4-1" exclude("org.webjars", "jquery") ) 这是我的requireJS构buildconfiguration requirejs.config({ baseUrl: '/assets/javascripts', shim: { 'jsRoutes': { deps: [], exports: 'jsRoutes' }, 'angular': […]

何时使用Requirejs以及何时使用捆绑的JavaScript?

这可能是一个愚蠢的问题,networking家伙。 但是我对此有点困惑。 现在,我有一个应用程序,我正在使用几个JavaScript文件来执行不同的任务。 现在,我正在使用Javascript 捆绑器来合并和缩小所有的文件。 所以,在运行时将只有一个app.min.js文件。 现在, Requirejs被用来在运行时加载模块或文件。 所以,问题是如果我已经在一个文件中的所有东西,那么我需要requirejs? 或者,我可以使用requirejs和/或bundler的用例场景是什么? 请让我知道是否需要进一步的细节。

我如何一起使用requireJS和jQuery?

我想使用requireJS,我正在使用jQuery。 我不想使用requireJS和jQuery的组合版本,因为我没有使用最新的jQuery版本。 我需要使用requireJS的最佳方式是什么?

如何使一个jQuery插件加载requirejs

我正在与requirejs + jquery,我想知道是否有一个聪明的方法,使jQuery插件与需求很好地工作。 例如,我正在使用jQuery-cookie。 如果我理解正确,我可以创build一个名为jquery-cookie.js的文件,并在里面做 define(["jquery"], // Require jquery function($){ // Put here the plugin code. // No need to return anything as we are augmenting the jQuery object }); requirejs.config( { "shim": { "jquery-cookie" : ["jquery"] } } ); 我想知道我是否可以做像jQuery这样的事情,就像这样: if ( typeof define === "function" && define.amd && define.amd.jQuery ) { define( "jquery", […]

组织jQuery / JavaScript代码的最佳方式(2013)

问题 这个答案之前已经回答了,但是已经老了,没有最新。 我在单个文件中有超过2000行代码,而且我们都知道这是不好的做法,特别是当我查看代码或添加新function时。 我想更好地组织我的代码,现在和未来。 我应该提到,我正在构build一个工具(不是一个简单的网站),其中有许多button,UI元素,拖动,下降,动作监听器/处理程序和函数在全球范围内,其中几个听众可以使用相同的function。 示例代码 $('#button1').on('click', function(e){ // Determined action. update_html(); }); … // Around 75 more of this function update_html(){ …. } … 更多示例代码 结论 我真的需要组织这个代码,以便最好的使用,而不是重复自己,并能够添加新的function,并更新旧的。 我将一个人在这个工作。 有些select器可以是100行代码,其他的是1.我看了一下require.js ,发现它有点重复性,实际上编写的代码比需要的多。 我愿意接受符合这个标准的任何可能的解决scheme,并且链接到资源/例子总是一个优点。 谢谢。

要求为什么以及何时使用shimconfiguration

我从这里读取了requirejs文档 requirejs.config({ shim: { 'backbone': { //These script dependencies should be loaded before loading //backbone.js deps: ['underscore', 'jquery'], //Once loaded, use the global 'Backbone' as the //module value. exports: 'Backbone' }, 'underscore': { exports: '_' }, 'foo': { deps: ['bar'], exports: 'Foo', init: function (bar) { //Using a function allows you to call noConflict for […]

Requirejs domReady插件vs Jquery $(document).ready()?

我使用的是RequireJS,需要在DOM上准备好一些东西。 现在,RequireJS提供了domReady插件 ,但是我们已经有了jQuery的$(document).ready() ,因为我需要jQuery,所以我可以使用它。 所以我有两个select: 使用domReady插件: require(['domReady'], function (domReady) { domReady(function () { // Do my stuff here… }); }); 使用$(document).ready() : $(document).ready(function() { // Do my stuff here… }); 我应该select哪一个,为什么? 这两个选项似乎按预期工作。 我对jQuery没有信心,因为RequireJS正在做它的魔法; 也就是说,因为RequireJS会dynamic地添加脚本,所以我担心在加载所有dynamic请求的脚本之前DOM就绪可能会发生。 而RequireJS会在我已经有jQuery需求的时候为domReady增加额外的JS负担。 问题 为什么RequireJS提供了一个domReady插件,当我们可以有jQuery的$(document).ready(); ? 我没有看到包括其他依赖项的任何优势。 如果只是为了满足需求,那么为什么不提供一个用于跨浏览器的AJAX呢? 据我所知,一个需要domReady的模块在文档准备就绪之后不会被获取或执行,你也可以做同样的要求jQuery: require(['jQuery'], function ($) { $(document).ready(function () { // Do my stuff here… }); }); […]

如何禁用警告“定义”不使用JSHint和RequireJS定义

我在我的项目中使用了RequireJS AMD。 当我在我的项目上运行jshint时,会抛出错误 在AMD脚本 'define' is not defined. 在摩卡testing案例 'describe' is not defined. 'it' is not defined. 如何在jshint中删除此警告?

Javascript中定义的是什么(除了显而易见的)

我search了这个文件的最高和最低,但只是找不到任何地方。 我正在使用Aloha,并希望使用他们的侧边栏原型来创build自己的附加到其他插件function的新侧栏。 他们的sidebar.js是以这个开始的,但是我不能在我的生活中find解释它意味着什么的任何文档。 define( [ 'aloha/core', 'aloha/jquery', 'aloha/selection' ], function ( Aloha, jQuery, Selection, Plugin ) { 然后在那个包装里继续定义一堆函数,所以vars和一些proptotypes – 我可以把它们proptotypes头上。 任何人都可以解释什么是对我说或给我的地方,我可以find一个解释?

Require.js和在DOM中简单地创build一个<script>元素有什么区别?

在使用Require.JS和在DOM中简单地创build<script>元素之间有什么区别? 我对Require.JS的理解是,它提供了加载依赖的能力,但是这不能简单地通过创build加载必要的外部JS文件的<script>元素来完成。 例如,让我们假设我有函数doStuff() ,它需要函数needMe() 。 doStuff()在外部文件do_stuff.js ,而needMe()在外部文件need_me.js 。 这样做的Require.JS方式: define(['need_me'],function(){ function doStuff(){ //do some stuff needMe(); //do some more stuff } }); 通过简单地创build一个脚本元素来做到这一点: function doStuff(){ var scriptElement = document.createElement('script'); scriptElement.src = 'need_me.js'; scriptElement.type = 'text/javascript'; document.getElementsByTagName('head')[0].appendChild(scriptElement); //do some stuff needMe(); //do some more stuff } 这两个工作。 但是,第二个版本不需要我加载所有的Require.js库。 我真的没有看到任何function差异…