grunt-contrib-requirejs
全部标签 假设我的grunt配置中有一个变量,它的值是一个数组。一个真实世界的例子是来自grunt-regarde的grunt.regarde.changed插件,列出所有已更改的文件。我想使用模板解析该数组,以便我可以(在本例中)复制更改的文件:copy:{staticWeb:{src:'',dest:'someDir'},在这种情况下,src得到的是一个逗号分隔的字符串,而不是一个数组。Grunt的文件处理器不解析字符串,因此找不到src文件。我无法删除模板周围的单引号,因为那样它就是无效的javascript。那么如何将grunt.regarde.changed数组传递给src变量呢?
我目前正在从事一个已经开始使用yeoman的项目。出于某种原因,当我运行grunt-wiredep时,除了font-awesome之外,所有依赖项都被正确地注入(inject)到我的index.html中。这是我的bower.json文件:{"name":"watermelon","version":"0.0.0","dependencies":{"angular":"^1.3.0","angular-animate":"^1.3.0","angular-bootstrap":"~0.13.3","angular-cookies":"^1.3.0","angular-google-ma
我目前正在为gruntjs设置自动构建脚本(使用require.js)驱动的项目。因此我想运行jslint/jshint在使用r.js连接和缩小所有必需文件之前。由于js文件夹包含很多我不想lint的开发文件,我不能只将js/**/*.js传递给JSLint。我的第一个想法是使用optimizer:'none'运行r.js,对连接的文件进行lint,然后将其缩小,但这不是一个选项,原因有二。首先它将包括vendor库我不想lint,然后找到有错误的行,找到它的类,在dev文件夹中找到合适的js文件,在那里修复它,再次运行r.js最后lint它再次,这对我们的工作流程来说很麻烦。所以我正
我正在尝试使用requirejs和grunt-contrib-qunit设置QUnit环境。这是我的。咕噜文件:qunit:{all:{options:{urls:['http://localhost:8000/qunit/qunit-test-suite.html']}}},connect:{server:{options:{port:8000,base:'.'}}},qunit-test-suite.html:QUnitTestsSuite:travisCITestQUnit.config.autoload=false;QUnit.config.autostart=false;qu
Bootstrap的最新测试版(v4)使用Tetherjs来定位元素,我无法让它在我的Requirejs应用程序中工作。在我的requirejs配置中我有以下shim的paths:{jquery:'/path/to/jquery',tether:'/path/to/tether'},shim:{'bootstrap':['tether','jquery']}当我想在我的应用程序中激活工具提示时,我使用了以下我认为正确的代码functionpage_events(){requirejs(['bootstrap'],function(bootstrap){$('[data-toggle="
我希望在我的下一个大型JS项目中使用RequireJS,但是我很难弄清楚如何在headless测试环境中对其进行测试。我对RequireJS和测试驱动的编码方法都不熟悉,所以任何对新手友好的东西都会很棒。 最佳答案 您可以从命令行测试RequireJS模块usingr.jstorunyourscriptsinNode.然后,您可以使用Node模块,例如assert,为您自己创建一个测试套件。这是一个过于简单的例子:scripts/simple.js:define({name:'Reallysimplemodule'});tests/
我已经使用Javascript一段时间了,我只是第一次尝试使用模块和requireJS,很难理解新的设计模式!这是我的第一次尝试:require(["jquery","testModule"],function($,testModule){$(function(){vartestInstance1=testModule;testInstance1.setID(11);alert(testInstance1.id);});});和testModule.jsdefine(['jquery'],function($){varid=0;varsetID=function(newID){id=n
我正在尝试将我所有需要的模块和一些文本模板连接到一个连接且丑陋的main.min.js中,这样我就可以将该文件包含在我的HTML中。我弄清楚了串联和丑化部分。但是,那时我无法在浏览器中实际运行任何代码。我创建了一个bare-boneprojectongithub,以重现问题。文件结构:main.jsindex.html日志.js构建生产lib/require.jsnode_modules/require/bin/r.js我使用构建文件build-production连接main.js、log.js和require.js:./node_modules/requirejs/bin/r.js
我需要重新构建一个现有的AMD模块,以使其在有/没有RequireJS的页面上都可用。我应该怎么做,有没有示例代码?最好是不污染全局命名空间的方法,尽管不是严格要求。 最佳答案 这根本不是一个坏主意,通常需要JS库来支持AMD/非AMD环境。这是解决方案的一种变体:!function(name,definition){if(typeofmodule!='undefined')module.exports=definition()elseif(typeofdefine=='function'&&define.amd)define(na
在使用grunt-contrib-jasmine时,我如何在命令行上指定要运行的单个规范文件?我的Jasmine部分看起来像这样:jasmine:{myapp:{src:['src/base.js','src/**/*.js']},options:{spec:['spec/models/**/*.js','spec/views/**/*.js']}}我只想为spec/models/file1.js运行测试。 最佳答案 有人用--filter命令行参数为你做了这件事,尽管它还没有被拉入master中:https://github.co