Articles of gruntjs

如何限制节点进程的CPU和内存使用量

我想通过GitHub在共享服务器上安装一个Ghost博客 。 在安装过程中,我需要运行npm install, grunt init和grunt prod 。 我的主机提供了500 MB的内存使用量,如果一个进程使用超过600 MB的内存,他会杀死它。 因此,我需要一个选项来限制这些进程的内存使用情况,因为它们都需要超过500 MB的内存! 我试图用–max-old-space-size=450来运行这个进程,但是它似乎不起作用。 如果有人能够给我提供一个关于使用选项运行节点进程的教程或文档的链接,我会很高兴。 谢谢!

El Capitan的“无根打破旧的咕噜configuration?

在迁移到El Capitan后,似乎用户正在经历一个咕噜安装的问题,可能与El Capitan的根本性变化有关。 特别是,运行grunt –force命令会导致EPERM错误。 工作stream程如下: 假设已安装npm,请使用package.json和gruntfile.js导航到grunt目录并调用grunt: grunt –force 示例Gruntfile.js文件内容: module.exports = function(grunt){ //所有configuration都在这里 grunt.initConfig({ pkg:grunt.file.readJSON('package.json'), concat:{ //连接文件的configuration在这里。 dist:{ src:[ ” ../js/libs/owl.carousel.js', ” ../js/libs/jquery.actual.js', ” ../js/libs/chosen.jquery.js', ” ../js/libs/jquery.parallax.js', ” ../js/src/common.js' ] dest:'../js/pro/global.js', }, }, uglify:{ build立:{ src:'../js/pro/global.js', dest:'../js/pro/global.min.js', }, }, imagemin:{ dynamic:{ 文件:[{ 展开:true, cwd:'../img/src/', src:['** / *。{png,jpg,gif}'], dest:'../img/pro/' }] } }, 指南针:{ dev:{ 选项:{ […]

Grunt连接代理redirect?

我在前端安装了AngularJS,后端安装了Java Spring 3。 所以当我运行grunt-server时,我使用grunt-connect-proxy来联系后端部分forms的前端部分。 所以我的连接configuration是这样的: connect: { proxies: [ { context:'/mdp-web', host: 'localhost', port: 8080, https: false, changeOrigin: true } ], options: { port: 9000, // Change this to '0.0.0.0' to access the server from outside. hostname: 'localhost' }, livereload: { options: { middleware: function (connect) { return [ proxySnippet, lrSnippet, mountFolder(connect, '.tmp'), mountFolder(connect, cegedimConfig.app) […]

Grunt – 你可以从一个自定义的注册任务中调用grunt-contrib-copy,并自定义副本吗?

我知道我可以在grunt.config中设置一个任务grunt-contrib-copy从src到dest的文件,并通过Grunt文档查看我知道我可以使用grunt.file.copy复制单个文件。 但是,是否可以在自定义注册任务中dynamic创buildgrunt-contrib-copy任务,以容纳从bash发送的参数? 我想创build一个新目录grunt.file.mkdir(“some / path / appfoldername”),然后将文件从另一个目标文件复制到该文件夹​​,但直到运行自定义任务后,我才知道文件夹名称。 所以像这样: grunt create_app:appfoldername 所以我可以一次复制一个文件,但是文件会改变,所以需要grunt-contrib-copy的强大function,但是可以自定义注册任务的灵活性。 如果我的解释不够清楚,我想像这样: grunt.registerTask('createCopy', 'Create a copy', function(folderName) { var cwd = grunt.template.process("some/path/to/app"); var src = grunt.template.process("some/path/to/src"); var dest = grunt.template.process("some/path/to/dest") + folderName; grunt.task.run('copy: { files: { cwd: cwd, src: src, dest: dest } }'); } UPDATE grunt.registerTask('mkapp', 'Create Application', function(appName) { // Check appName is […]

如何使用grunt使tinymce在开发和远程环境中工作?

我与咕噜和凉亭包pipe理beaginer。 我使用tinymce软件包为我的应用程序,当我使用grunt服务evrything正常工作,并且当我使用grunt服务:dist,资源pipe理器searchtinymce插件不正确的path,而铬和mozilafind插件。 我想也许我需要点tinypce的插件url相关的path,但它是不可能在constract到theme_url和微小mce的其他属性。 我能做什么? 我不想复制所有的tinymce dist。

你可以传递一个Gruntvariables到一个Grunt任务中的JavaScript函数吗?

这里是我正在寻找的一个例子: module.exports = function(grunt) { grunt.initConfig({ config: grunt.file.readYAML('_config.yml'), // example variable: <%= config.scripts %> copy: { scripts: (function() { if (config.scripts === true) { // I want to target <%= config.scripts %> return { expand: true, cwd: '<%= input %>/_assets/js/', src: '**/*.js', dest: '<%= output %>/assets/js/' }; } else { return { // do nothing […]

unit testing的JavaScript代码风格

我开始使用JavaScript的unit testing(与茉莉花)。 我有unit testingC#代码的经验。 但是,鉴于JavaScript是一种dynamic语言,我发现它是非常有用的,并使用JavaScript的expression力量编写testing,例如: describe('known plugins should be exported', function(){ var plugins = ['bundle','less','sass','coffee','jsn','minifyCSS','minifyJS','forward','fingerprint']; plugins.forEach(function(plugin){ it('should export plugin named ' + plugin, function(){ expect(all[plugin]).toBeDefined(); }); }); }); 就做这种非常规的testing写作而言,我并没有做过这样的testing(testing用例列表非常类似) 所以我想我的问题是 编写这样的testing是好的,还是应该将自己限制在一个更“静态types”的testing夹具上?

我如何使用GruntJS运行一个特定的CucumberJSfunction?

我使用CucumberJS在我的NodeJSnetworking应用程序上运行testing。 目前,我可以使用grunt cucumberjs执行grunt ,或者只执行CucumberJS任务来运行所有的咕噜任务。 但是现在我只想执行特定的function。 例如,说我有以下function文件: Signin.feature Favourite.feature 我只想运行最喜欢的functiontesting,使用如下命令: grunt cucumberjs Favourite 这可能吗? 顺便说一句,这是我的gruntfile.js : 'use strict'; module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), … cucumberjs: { src: 'features', options: { steps: 'features/step_definitions', format: 'pretty' } } }); … grunt.loadNpmTasks('grunt-cucumber'); grunt.registerTask('default', [… 'cucumberjs']); };

吞食环境和预处理

在Grunt中,我曾经使用一个名为env的插件。 这将允许我在特定的构build中定义一个环境。 我有3个版本。 一个是DEV,它将使用所有分开的文件。 PROD会把所有的东西都连接起来,而RELEASE会连接和uglify。 我正在Gulp做同样的事情。 我看到Gulp的预处理器,但没有定义环境。 问题是。 我能做什么? 显然,我不想一直定义所有的JS文件,我不希望3个不同的HTML页面具有不同的脚本标签。 在我的HTML我会有这样的事情: <!– @if NODE_ENV == 'DEVELOPMENT' –> <script src="js/example1.js" type="text/javascript"></script> <script src="js/example2.js" type="text/javascript"></script> <script src="js/example3.js" type="text/javascript"></script> <!– @endif –> <!– @if NODE_ENV == 'PRODUCTION' –> <script src="js/project.js" type="text/javascript"></script> <!– @endif –> <!– @if NODE_ENV == 'RELEASE' –> <script src="js/project.min.js" type="text/javascript"></script> <!– @endif –> 我的grunt插件看起来像这样: env: […]

如何获得一个咕噜任务的饲料输出到另一个咕task任务?

我不确定咕噜声是否可以做到这一点。 我有两个咕噜的任务,我想运行。 第一个任务是创build一个模拟post,第二个是运行penthouse任务内联CSS。 任何hacky的方式是值得欢迎的。 这是我必须运行在WordPress创build博客文章的exec任务。 exec: { create_mock: { cmd: 'cd ~/MyProjects/project/vip-quickstart && vagrant ssh -c \'sh /srv/www/wp-content/themes/vip/the-theme/bin/mock-post.sh\'', callback: function(err, stdout, stderr) { grunt.log.write('stdout: ' + stdout); // This is the url of the created post. } } }, 输出是博客文章创build的url,我有这个penthouse任务运行,我需要在这个任务将看起来得到所有上面的折叠CSS的URL。 penthouse: { singular: { outfile: 'assets/css/inline/_singular.css', css: 'assets/css/theme.css', minify: true, url: $URL, // << I […]