Tag: gruntjs

在Windows上开发并构build在Linux上的代码上使用NodeJs的Grunt?

如何使用nodejs构build跨平台项目? 我在Windows上开发,但是我的代码库build立在一个基于Linux的CI服务器上。 它使用Grunt构build前端,并且需要几个nodejs模块。 Nodejs需要将模块本地安装到项目中,以便由grunt.task.loadNpmTasks加载。 这个问题是我必须从Windows或Linux的某个地方安装它们,而当我从一个地方安装它时,它不能在另一个地方工作。 我的项目需要的列表模块安装在本地,如下所示: npm install connect-livereload –production npm install time-grunt –production npm install load-grunt-tasks –production npm install jshint-stylish –production npm install load-grunt-tasks –production npm install grunt-contrib-copy –production npm install grunt-contrib-concat –production npm install grunt-contrib-uglify –production npm install grunt-contrib-compass –production npm install grunt-contrib-jshint –production npm install grunt-contrib-cssmin –production npm install grunt-contrib-connect –production npm […]

grunt-contrib-concat:如何使用选项“process”

我正在编写构build系统使用Grunt的Javascript库(Widget),将连接,缩小和打包文件分发。 在连接步骤中,我想将当前date插入到其中一个带有grunt-contrib-concat进程选项的JS文件中,在这里声明: types:布尔对象默认值:false 在连接之前将源文件处理为模板。 错误 – 不会进行处理。 真 – 使用grunt.template.process默认处理源文件。 options对象 – 使用grunt.template.process处理源文件,使用指定的选项。 函数(src,filepath) – 使用给定函数处理源文件,为每个文件调用一次。 返回的值将被用作源代码。 (默认处理选项在grunt.template.process文档中进行了说明) 来自Gruntfile.js的Concat部分: concat: { options: { stripBanners: { block: true }, process: true, separator: '\n /* —– */ \n', banner: '<%= meta.banner %>' }, dist: { src: ['src/Utility.js', 'src/MainClass.js', 'src/ViewClass.js', 'src/exif.js'], dest: 'build/Viewer.js' } }, 我把下面的行放在Utility.js中: viewer.build_date = […]

我如何在heroku上设置一个节点应用程序(ember app kit)来读取ENVvariables,并使值可用于应用程序?

好吧,我是新来的节点,真的只是使用节点服务器来服务静态js,但我无法find任何地方的任何信息。 我正在运行一个应用程序应用程序套件 ,它被构build到一个节点server.js进行部署,而heroku则通过node server.js运行它。 它使用grunt来build造,testing等 我想知道如何指定可以被herokuconfigurationvariables覆盖的configurationvariables(即authentication令牌)。 最近我已经能够得到一个自定义的任务,读取环境variables,并写出一个json文件内置到网站(并分配给全局variables)。 这在本地工作,但不考虑herokuconfiguration。 我甚至写了一个部署脚本来获取heroku的configuration文件,将它们作为环境variables导出到本地,然后执行构build – 这是可行的,但configuration只会在应用程序部署中更新。 所以,如果我做一个heroku config:add CONFIG_TEST=test_value ,我的应用程序不会看到CONFIG_TEST值,直到下次我部署应用程序。 我想让我的应用程序立即开始在浏览器JS中embedded该configuration值。 任何方式来做到这一点与我的应用程序设置的方式吗?

如何自动testinghtml5媒体元素

我目前使用nodejs,grunt和phantomjs来自动化testing的JavaScript。 但是我最近注意到phantomjs不支持html5媒体元素(video,audio,轨道)。 我想知道有没有人知道解决这个问题的好方法? 还是你跳过使用HTML5媒体元素的testing自动化? 问候,约翰

grunt-contrib-watch不看新文件

我想在github上复活死人的bug之前在这里发布,有没有什么畸形的我的文件部分? 观察部分如下: watch: { files: ['includes/js/source/_*.js'], tasks: 'dev', }, 一个grunt –verbose给我以下几点: Running "watch" task Waiting… Verifying property watch exists in config…OK Watching includes/js/source/_broken.js for changes. Watching includes/js/source/_hi.js for changes. Watching includes/js/source/_jquery_ui_1.10.3_autocomplete.js for changes. Watching includes/js/source/_menu_toggle.js for changes. Watching includes/js/source/_thisisatest.js for changes. Watching includes/js/source for changes. 系统规格: 运行Vagrant的Mac OS X 10.9.3: Ubuntu 12.04(php 5.5.11,apache 2.4.9) 节点v0.10.28 […]

在一个sails应用程序中制作js文件的可用资源(不会将它们注入到每个视图中)

我想插入一个特定的脚本标记到特定的视图和其他地方。 这个问题几乎可以捕捉到我的问题,但是我想使用我已经写好的脚本,并希望将其放到客户端的公共目录中,而不是使用hfref将脚本标记实现到其他位置的http地址。 我看到给定的解决scheme是如何让你把脚本标签放在一个特定的视图中,但是我不知道在哪里存储我要插入到视图中的js,以便它成为一个可用的资源。 我首先想到的是我放在'/ assets'里面的任何目录都会放在客户端的公共目录下,但是当我尝试添加'/ assets / localScripts'目录并把脚本放在里面的时候,目录,也没有脚本出现。 所以我想我会把本地脚本放在'assets / js'目录中,但是我放在那里的所有东西(即使是在一个子目录中)都被添加到每个视图中,我不希望这个脚本被注入主页(或任何地方接受一个特定的视图)。 我查看了pipeline.js文件,试图修改咕噜声。 这解决了从咕噜任务中排除文件的问题,表明我应该能够告诉grunt忽略文件“/assets/js/localScripts/gameview.js”,但我没有运气。 我试图添加到pipe道部分的结尾,selectjs文件注入以下每个exception(做同样的事情): var jsFilesToInject = [ // Load sails.io before everything else 'js/dependencies/sails.io.js', // Dependencies like jQuery, or Angular are brought in here 'js/dependencies/**/*.js', // All of the rest of your client-side js files // will be injected here in no particular order. […]

生成源映射时出错 – grunt和sassconfiguration

我正在尝试用咕噜声使用sass。 我在我的路上安装了ruby,ruby和咕噜声。 版本是, 节点:0.10.20 npm:1.3.11 咕噜咕噜:0.1.13 咕噜:0.4.5 sass:3.4.4 我的包json是, "private": true, "devDependencies": { "express": "4.x", "grunt": "~0.4.1", "grunt-contrib-sass": "~0.3.0", "grunt-contrib-watch": "~0.4.4" } 我的咕噜文件是, module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), sass: { dist: { files: { 'style/style.css' : 'sass/home.scss' } } }, watch: { css: { files: '**/*.scss', tasks: ['sass'] } } }); grunt.loadNpmTasks('grunt-contrib-sass'); grunt.loadNpmTasks('grunt-contrib-watch'); […]

GruntJSrecursion通配差异

GruntJS节点通配中的**/*.js 。js和{,*/}*.js 。js有什么区别?

Grunt不从grunt-json-server运行json_server任务

我正在使用configurationnpm页面给出的例子,但是当我尝试使用grunt.run.task (['json_server'])或concurrent: { server: { tasks [ 'json_server'] } }运行任务concurrent: { server: { tasks [ 'json_server'] } } ,grunt甚至不会在控制台输出任务名称。 它甚至不给我一个错误,如果我删除它试图指向的数据库文件。

在启动节点debugging服务器之后,Grunt停止输出信息

我的问题与此类似: Grunt不会加载节点服务器 但是,答案并不能解决我的问题。 这是我的gruntfile: 'use strict'; module.exports = function(grunt) { // Unified Watch Object var watchFiles = { serverViews: ['app/views/**/*.*'], serverJS: ['gruntfile.js', 'server.js', 'config/**/*.js', 'app/**/*.js'], clientViews: ['public/modules/**/views/**/*.html'], clientJS: ['public/js/*.js', 'public/modules/**/*.js'], clientCSS: ['public/modules/**/*.css', 'public/lib/bootstrap/dist/css/icomoon.css'], mochaTests: ['app/tests/**/*.js'] }; // Project Configuration grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), watch: { serverViews: { files: watchFiles.serverViews, options: { livereload: true } }, serverJS: […]