如果目录为空,如何跳过 grunt 任务

2024-03-23

我正在使用 grunt-contrib 的concat and uglify处理一些 javascript 的模块。目前如果src/js/是空的,他们仍然会创建一个(空)连接文件,以及缩小版本和源映射。

我想要检测是否src/js/继续之前文件夹为空,如果是,则任务应跳过(而不是失败)。有什么想法如何做到这一点?


该解决方案可能不是最漂亮的,但可以给您一个想法。你需要运行类似的东西npm install --save-dev glob第一的。这是基于部分Milkshake你提到的项目。

grunt.registerTask('build_js', function(){
  // get first task's `src` config property and see
  // if any file matches the glob pattern
  if (grunt.config('concat').js.src.some(function(src){
    return require('glob').sync(src).length;
  })) {
    // if so, run the task chain
    grunt.task.run([
        'trimtrailingspaces:js'
      , 'concat:js'
      , 'uglify:yomama'
    ]);
  }
});

比较要点:https://gist.github.com/kosmotaur/61bff2bc807b28a9fcfa https://gist.github.com/kosmotaur/61bff2bc807b28a9fcfa

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果目录为空,如何跳过 grunt 任务 的相关文章

  • Grunt.js:在任务完成之前修改文件后立即触发 livereload

    我正在使用 Grunt 来编译带有指南针的 CSS 并触发浏览器 livereload 这些是我的手表任务 watch styles options spawn false files assetsDir scss dev min scss
  • 如何让 Bower 构建包?

    有没有办法让 Bower 在从 GitHub 克隆后运行包 grunt 我正在尝试使用 Bower 但我使用的软件包之一是 Bootstrap 扩展 x editable 问题是 虽然其他软件包将完整构建的版本推送到 github 所以当
  • For 循环中的 Grunt 运行

    我是咕噜声的新手 我有一个适用于单个构建的 gruntfile 有几个目标链接在一起来完成该过程 问题是我需要使用变量数据创建几个不同的版本 我正在尝试弄清楚如何在我的 gruntfile 中执行此操作 今天 要进行构建 我只需要运行 gr
  • 以编程方式设置 grunt 任务的选项?

    我有一个繁琐的任务 查看选项grunt option foo 如果我从以下位置调用此任务grunt task run my task 我怎样才能改变这些论点 我正在寻找类似的东西 grunt task run my task foo bar
  • Yeoman 生成器中的“{.tmp,app}”是什么?

    我正在开始使用 Yeoman 工作流程 但我似乎无法完全理解 index html 文件中 usemin 任务的 备用搜索路径 例如 使用 yo angular 命令生成了 2 个块
  • ASP .NET 5 - 将文件从节点模块复制到 wwwroot 的 grunt 任务

    我有一个简单的 ASP NET 5 空项目 安装了 npm 和 grunt 我使用 npm 安装了一些客户端库 目前位于我的 ASP NET 项目下的 node modules 目录中 我想将相关文件 例如 jquery min js 从n
  • 错误:$compile:tpload 无法加载模板 Http 状态:404

    当我尝试使用 Angular 运行本地项目时 我从 Chrome 收到 404 状态 我不确定问题出在哪里 并且我已经尝试过类似问题的建议答案 这是我的指令文件 use strict ngdoc directive name stockDo
  • 对字体(font-awesome)资源的引用未在 yeoman/Angular grunt 构建中更新

    我知道有关此问题的SO线程 我在下面链接了它们 但不幸的是我无法用它们解决这个问题 所以请允许我这个问题 我使用 Yeoman 启动了一个 AngularJS 项目 因此依赖于使用 Bower js 和 SCSS 的 grunt js 构建
  • 是什么原因导致 grunt.js 中的 /*global module: false*/

    许多 grunt js 脚本以以下内容开头 global module false module exports function grunt 但是第一行注释的原因是什么 它是 JSLint 或 JSHint 的指令 它告诉 JSLint
  • grunt jasmine-node 测试运行两次

    我设置 grunt 来运行 node js 茉莉花测试 由于某种原因 使用此配置 结果总是显示双倍的测试 这是我的配置 我在用着茉莉花节点 https github com jasmine contrib grunt jasmine nod
  • 为什么 Yeoman 构建时没有字形图标?

    我正在研究一个webapp发电机及运行后grunt我有一个可以正确显示字体的功能应用程序 然而 当我检查dist 目录我没有得到任何字体文件 文档指出grunt命令build the application for deployment 但
  • 如何通过 Grunt 运行节点脚本?

    我希望通过我的 gruntfile 运行节点命令 我只需要运行 node index js 作为任何其他任务之前的第一个任务 我尝试四处寻找但没有找到答案 我相信这可能很简单 但我不确定如何做 我需要加载 nmp 任务吗 这就是我的 Gru
  • 用于开发/生产环境的备用 grunt.js 任务

    我真的很希望能够拥有一个开发 grunt 文件并使用相同的文件作为脚本的生产版本 我已经尝试过建议 但是当尝试调用 dev prod 参数时 我的脚本将会失败 我相信答案是针对旧版本的 grunt 或者可能是我正在使用的插件 module
  • gruntjs - 命令行参数

    在哪里可以获得命令行参数的句柄 eg grunt dist env UAT 我如何获得价值env 当我这样做时 如果未在命令行上设置它 我将如何为其分配默认值 您可以使用grunt option 或者更具体地说 var env grunt
  • 让 karma 服务器在 grunt watch 上启动

    在开发过程中 我使用 karma 和 grunt 来监视文件更改并运行测试 在命令行中 我希望能够简单地输入 grunt watch 并让 karma 服务器启动一次 然后每当文件更改时 grunt 监视更改并运行各种任务 包括 karma
  • 无法在 yeoman Angular 生成的 Web 应用程序中生成“dist”文件夹

    我无法生成dist使用 yeoman 角度生成器构建和生成的 Web 应用程序中的文件夹 我正在粘贴 grunt 构建的详细内容 请检查这是否有帮助 pdc1 f3t18r1 ShippingSolution administrator g
  • 将 MobileServiceClient 与 AngularJS 集成

    我正在尝试使用 Angular 中的 WindowsAzure MobileServiceClient 来执行单点登录和 CRUD 操作 作为一名 Angular 菜鸟 我正在尝试找出实现此目的的最佳方法 在 run 中的 rootScop
  • 如何让 Grunt.js 和 Meteor.js 协同工作?

    我想在我的 Meteor 应用程序中使用简单的复制和串联 但是当 Meteor 在服务器和客户端上运行所有 javascript 文件时 我遇到了问题 而我不希望它们在任何地方运行 它要么只是配置文件 例如Gruntfile js或我想以某
  • Sails JS 在视图中包含节点模块

    我正在使用帆 http sailsjs com http sailsjs com 开发一个小平台 按照文档 一切都很顺利 但是作为这个 javascript 框架世界和 npm 等的新手 我在包含其他 node modules 并在 ejs
  • 如何安装 grunt-cli 而不出现错误?

    灵感来自 Chris Coyierpost http 24ways org 2013 grunt is not weird and hard 我决定尝试一下 grunt 但我在设置时遇到了很大的问题 首先 我安装了 Node js 然后我将

随机推荐

  • CSS中这个符号是什么意思?

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 这是什么 这是关于 CSS 语法时不时出现的问题的集合 这也是一个社区 Wiki 所以邀
  • Django 表单向导和 recaptcha

    我使用以下命令进行了验证码集成Django 片段 http www djangosnippets org snippets 1653 settings py RECAPTCHA PUBLIC KEY
  • 创建物化视图时如何指示某列不可为空?

    我正在使用以下查询创建物化视图 CREATE MATERIALIZED VIEW article view AS SELECT id alternative headline article author id created at des
  • 有没有更好的方法在字符串列表上使用 strip() ? - 蟒蛇[重复]

    这个问题在这里已经有答案了 现在我一直在尝试对字符串列表执行 strip 我这样做了 i 0 for j in alist alist i j strip i 1 有更好的方法吗 你可能不应该使用list作为变量名 因为它是一种类型 不管
  • 内连接与 IN

    SELECT C FROM StockToCategory STC INNER JOIN Category C ON STC CategoryID C CategoryID WHERE STC StockID StockID VS SELE
  • Rx 中的历史调度程序

    我有以下代码 我尝试重播序列 但 PostWorkItem 总是为 null 我不明白为什么 下面的代码给出了堆栈溢出错误 Task
  • 锁内锁

    我想知道这种构造是否会导致错误 lock sync something lock sync something lock sync something 我已经运行了这段代码 看起来不错 但也许在某些情况下可能会引发错误 lock是一个包装器
  • 如何指定头文件引入的库依赖

    假设在 CMake 项目中 我有一个内置到库中的源代码 a cpp void f some code 我有一个标题 b h void f struct X void g f 我还有另一个文件 main cpp include b h int
  • 在 PHP 中压缩字符串的最佳方法[重复]

    这个问题在这里已经有答案了 我正在使用 gzcompress json encode arr 9 压缩数组 所以我使用 json encode 将数组转换为字符串 然后使用 gzcompress 进行压缩 但我找不到结果字符串大小的太大差异
  • 通过 jasperreport 打印整个 HashMap

    我需要通过 jasperreport 打印整个地图 Example Column1 Column2 key1 val1 key2 val2 key2 val2 应该选择什么数据源 报告来源应包含哪些内容 PS 我不想像 P key11 那样
  • Highcharts:确保 y 轴 0 值位于图表底部

    我在页面上输出一系列高图表 在某些情况下 指定时间段内的所有数据可能返回 0 值 在这种情况下 图表如下所示 http jsfiddle net charliegriefer KM2Jx 1 http jsfiddle net charli
  • 光标所在位置未输入字符

    在我的 Ace 编辑器中 滚动条出现后 字符被输入 但不是光标所在的位置 见下图 出了什么问题 该代码在我的开发环境中似乎工作正常 我注意到我的开发环境的字体比我的产品环境的字体大 Dev env 产品环境 我不明白为什么会有差异 以及这是
  • 如何在 Mono/Windows 上使用 gecko-sharp 嵌入 Gecko?

    Gecko 是 Firefox 的渲染引擎 使用 gecko sharp 可以将其嵌入到任何 Mono GTK 程序中 有一个名为的示例应用程序GladeSharp浏览器 http developer novell com wiki ind
  • Sql Server 中的标识列

    为什么 Sql 服务器不允许在一张表中存在多个 IDENTITY 列 任何具体原因 你为什么需要它 SQL Server 会跟踪单一值 当前标识值 对于每个表IDENTITY列 因此每个表只能有一个标识列
  • R - 来自 SpatialPolygons 列表的 SpatialPolygonsDataFrame

    我正在寻找一种从 SpatialPolygons 列表创建 SpatialPolygonsDataFrame 的方法 下面是一个多边形列表的示例 应从中创建包含列表中所有多边形的 SpatialPolygonsDataFrame 编辑 Sp
  • 致命错误:未捕获 OAuthException:(#803) 您请求的某些别名不存在

    致命错误 未捕获的 OAuthException 803 您请求的某些别名不存在 0 309479102458745 在第 1039 行的 base facebook php 中抛出 我的应用程序工作正常 然后突然许多用户收到此错误 0 3
  • Codeigniter 增加会话超时不起作用

    我是 codeigniter 框架的新手 我遇到页面会话超时问题 现在我已经启用了 ip 匹配 用户代理匹配 但不起作用 我尝试过的另一种方法是更新 2 1 4 库文件并将其复制到我的系统中 文件夹但这也不起作用 请帮助我解决会话超时问题
  • Elasticsearch 中对象聚合的嵌套数组

    Elasticsearch 中的文档是这样索引的 文件1 task completed 10 tagged object category cat count 10 category cars count 20 文件2 task compl
  • 将参数添加到“队列新建”对话框

    我基于 DefaultTemplate xaml 构建了一个自定义构建流程模板 并添加了一些参数 它们在 构建定义 窗口中显示良好 但我找不到将它们显示在 队列新构建 对话框的参数选项卡上的方法 我希望这是可能的 我宁愿不需要为参数的每个变
  • 如果目录为空,如何跳过 grunt 任务

    我正在使用 grunt contrib 的concat and uglify处理一些 javascript 的模块 目前如果src js 是空的 他们仍然会创建一个 空 连接文件 以及缩小版本和源映射 我想要检测是否src js 继续之前文