Articles of gruntjs

PhantomJS退出意外退出代码-1073741819

我在Windows 7 PC上用PhantomJS(通过Grunt)运行一些Jasmine规格,而且碰巧遇到以下错误: Testing jasmine specs via phantom …… Running PhantomJS…ERROR >> 0 [ '' ] Warning: PhantomJS exited unexpectedly with exit code -1073741819. Use –force to continue. Aborted due to warnings. 如果我删除一堆testing,错误不会出现; 但是我不知道是什么原因导致错误。 我也觉得奇怪,它只是偶尔发生。 任何想法为什么发生这种情况

如何debugging从Visual Studio代码中的Grunt运行茉莉花testing?

我的unit testing是通过Grunt使用Karma / Jasmine运行的。 当我跑步 grunt test testing从命令行执行。 在Visual Studio代码中打开项目时,可以使用“ Tasks: Run Test Task相同的命令。 VSCode使用test参数执行Grunt并显示输出。 在这种情况下,如何debugging由VSCode运行的testing用例? 当我按下F5时 , launch.json模板文件被打开。 我需要提供什么program , args等来启动/debugging通过grunt test运行相同的grunt test ? 我已经尝试了以下内容: program : /usr/local/bin/grunt args : ["test"] 这成功地启动了Grunt进程并且执行了testing,但是它并不停止在我的testing代码的断点处。 除此之外,它会在几秒钟后closures(或崩溃)整个VSCode进程。 不知道这是VSCode中的错误还是上述运行configuration的结果。

Grunt连接任务和中间件Access-Control-Allow-Origin

我想允许访问跨源数据调用,我需要能够执行其余的API调用到服务器。 我的连接grunt任务configuration如下: connect: { options: { port: 9000, // Change this to '0.0.0.0' to access the server from outside. hostname: 'localhost', livereload: 35729, middleware: function(connect, options, next) { return [ function(req, res, next) { res.setHeader('Access-Control-Allow-Origin', '*'); res.setHeader('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); res.setHeader('Access-Control-Allow-Headers', 'Content-Type'); next(); } ]; } }, }, 当我运行grunt服务器时,我得到Cannot GET / 。 没有中间件configuration的应用程序正在工作,并索引文件正确加载。 你能指导我做什么我错了或错过了吗? 关于我的gruntfile的更多细节是,我使用yeomanangular种子应用程序作为我的基础应用程序。

如何在我的任务代码运行之前从我的自定义任务中调用其他任务?

我正在尝试在grunt中创build一个自动调用其“先决条件”的自定义任务。 我不确定如何做到这一点。 Grunt.js文档显示了这个例子: grunt.registerTask('foo', 'My "foo" task.', function() { // Enqueue "bar" and "baz" tasks, to run after "foo" finishes, in-order. grunt.task.run('bar', 'baz'); … // Other stuff here }); 我不想“在foo之后排队bar ”,我想在那里执行它们, grunt.task.run在那里,所以他们会在我的“其他东西”之前被执行。 我怎么做?

在JavaScript美化/皮棉空白

我想lint(甚至自动)美化JavaScript中的空格。 问题是,是否有任何工具可以做到这一点。 我知道JSLint和JSHint,例如,可以检查缩进和尾随空格,这是好的,但这些不是唯一的空白你可能有。 我想要检查的是: 在某些结构之前或之后是否有空行? 是否有不止一个空行? 某些东西之间是单个空格(这是通过JSLint / JSHint部分检查的)? … 基本上,我想拥有一些像Visual Studio plus Resharper这样的现代化IDE,但是作为一个可以embedded到Grunt中的命令行工具。 我发现的唯一的东西在这个方向是esformatter ,但根据它的网站 仍处于早期发展阶段,缺less对许多重要function的支持。 如果有更成熟的东西,那当然会好的。 有任何想法吗?

需要grunt @> = 0.4.0的同伴

为什么我会得到下面的错误? 我的咕噜版本是> v0.4.0 npm install grunt-contrib-concat –save-dev + – UNMET PEER DEPENDENCY grunt @> = 0.4.0 错误消息: …项目\ Hartz \ Hartz> npm install grunt-contrib-concat –save-dev Hartz@1.0.0 C:.. \ Projects \ Hartz \ Hartz + – UNMET PEER DEPENDENCY grunt @> = 0.4.0` – grunt-contrib-concat@1.0.1 npm WARN grunt-contrib-jshint@1.0.0需要grunt @> = 0.4.0,但没有安装。 npm WARN grunt-contrib-concat@1.0.1需要grunt @> = […]

使用grunt-browserify(> 2.0.2)作为转换工具很难获得browserify-shim

在grunt-browserify 2.0.2版本中, browserify-shim已经从模块本身中被移除,并被转换为一个transform ,而不是在grunt-browserify任务上的一个简单的option 。 用grunt-browserify使用垫片的旧版本看起来是这样的: 'libs-dev': { src: [path.join('<%= config.dirs.browserLibs %>', 'angular', 'angular.js')], dest: path.join('<%= config.dirs.dest.dev %>', 'js', 'libs.js'), options: { shim: { angular: { path: path.join('<%= config.dirs.browserLibs %>', 'angular', 'angular.js'), exports: 'angular' } } } } 这工作得很好,并围绕libs.js模块生成一个包装,如下libs.js : require=(function(e,t,n){function i(n,s){if(!t[n]){if(!e[n]){var o=typeof require=="function"&&require;if(!s&&o)return o(n,!0);if(r)return r(n,!0);throw new Error("Cannot find module '"+n+"'")}var u=t[n]={exports:{}};e[n][0].call(u.exports,function(t){var r=e[n][1][t];return i(r?r:t)},u,u.exports)}return t[n].exports}var […]

如何用Grunt指定文件顺序?

我刚开始使用Grunt ,并试图获取concat任务,以特定的顺序连接我的文件。 这是我得到的: module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), concat: { options: { separator: ';' }, dist: { src: ['www/js/*.js','www/js/main.js','!**/*.{min,pack}.js','!<%= concat.dist.dest %>','!<%= uglify.dist %>'], dest: 'www/js/<%= pkg.name %>.js' } }, 我希望通过把www/js/main.js第二位,它会把文件移到列表的底部,但是看起来并不是这样。 我怎样才能在它匹配的文件列表上施加一些命令?

如何使用grunt将编译的jade文件复制到目标文件夹

对于我正在处理的单页应用程序,我有以下结构: DIST CSS JS LIB 谐音 的index.html SRC CSS JS LIB 意见 谐音 index.jade 目录dist将被快递服务器用来为项目服务。 我使用grunt-contrib-clean , grunt-contrib-copy来清理dist并将src / css , src / js , src / lib复制到dist 。 问题在于src / views 。 这个目录包含需要被编​​译成html文件的jade文件。 编译后,我想要他们dist (index.html中的dist根,partials作为子目录)。 目前我正在使用grunt-contrib-jade任务来编译和复制玉文件。 我想将它们复制到dist,因为我不想将编译的html文件添加到源代码pipe理。 但现在这是不可行的,因为你必须指定每个翡翠文件(现在只有less数,但会增长): jade: { compile: { options: { pretty: true }, files: { // TODO make one line […]

Grunt-mocha-test Xunit记者将整个控制台输出写入到xunit文件中

我正在使用grunt-mocha-test来运行我们的摩卡testing。 我希望能够运行testing并生成xunit报告并获得覆盖(使用blanket.js)。 我有我的gruntfile中的以下部分: mochaTest: { 'unit-jenkins': { options: { reporter: 'XUnit', require: paths.test + '/blanket', captureFile: paths.tmp + '/xunit.xml' }, src: [paths.test + '/unit/**/*.js'], }, 'integration-jenkins': { options: { reporter: 'XUnit', require: paths.test + '/blanket', captureFile: paths.tmp + '/xunit.xml' }, src: [paths.test + '/integration/**/*.js'] }, coverage: { options: { reporter: 'html-cov', quiet: true, captureFile: paths.tmp […]