如何让 grunt 服务任务与 watch 一起工作?

2024-03-07

我最近安装并启动并运行了它,但我似乎无法让它与我的手表任务同时运行?在我的 grunt 文件中,如果在监视之前注册服务任务,服务器会旋转,但监视任务不会......反之亦然。这是服务包,我正在使用并附加了 Grunt 文件:

https://www.npmjs.com/package/grunt-serve https://www.npmjs.com/package/grunt-serve

module.exports = function(grunt) {

    // 1. All configuration goes here 
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        concat: {   
            dist: {
                src: [
                    'js/libs/*.js', // All JS in the libs folder
                    'js/global.js'  // This specific file
                ],
                dest: 'js/build/production.js',
            }
        },

        uglify: {
            options: {
              mangle: false
            },
            my_target: {
              files: {
                'js/build/production.min.js': ['js/build/production.js']
              }
            }
          },

        imagemin: {
            dynamic: {
                files: [{
                    expand: true,
                    cwd: 'images/',
                    src: ['**/*.{png,jpg,gif}'],
                    dest: 'images/build/'
                }]
            }
        },

        sass: {
            //options: {  
            //    style: 'compressed'
            //},
            dist: {
              files: [{
                expand: true,
                cwd: 'css',
                src: ['*.scss'],
                dest: 'css/build/',
                ext: '.css'
              }]
            }
          },

        serve: {
            options: {
                port: 9000
            }
        },

        watch: {
            options: {
                livereload: true,
            },              
            css: {
                files: ['css/**/*.scss'],
                tasks: ['sass'],
                options: {
                    spawn: false,
                }
            },            
            scripts: {
                files: ['js/*.js'],
                tasks: ['concat', 'uglify'],
                options: {
                    spawn: false,
                },
            } 
        }



    });

    // Load all Grunt tasks automatically wihtout having to enter manaually
    require('load-grunt-tasks')(grunt);

    grunt.registerTask(
        'default',
            [
                'concat', 
                'uglify', 
                'sass', 
                'serve',
                'watch'
            ]
    );

};

Grunt serve和咕噜声watch都是阻塞任务。你可以使用像这样的插件grunt-concurrent https://github.com/sindresorhus/grunt-concurrent在单独的线程中同时运行两者。https://github.com/sindresorhus/grunt-concurrent https://github.com/sindresorhus/grunt-concurrent

concurrent: {
    target1: ['serve', 'watch'],
}

//aslo update your default task
grunt.registerTask(
    'default',
        [
            'concat', 
            'uglify', 
            'sass', 
            'concurrent:target1'
        ]
);

另外你还可以使用grunt-concurrent并行运行 uglify 和 sass 任务,这可能会缩短构建时间。

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

如何让 grunt 服务任务与 watch 一起工作? 的相关文章

  • 警告:尝试多次加载角度。角JS

    我试图在运行 Grunt Build 后查看我的应用程序 我使用 gruntserve dist 来查看所有生产就绪的构建 但在浏览器中我得到一个无限循环 警告 尝试多次加载角度 我读到发生这种情况是因为 TemplateURL 连接后可能
  • ASP .NET 5 - 将文件从节点模块复制到 wwwroot 的 grunt 任务

    我有一个简单的 ASP NET 5 空项目 安装了 npm 和 grunt 我使用 npm 安装了一些客户端库 目前位于我的 ASP NET 项目下的 node modules 目录中 我想将相关文件 例如 jquery min js 从n
  • 对字体(font-awesome)资源的引用未在 yeoman/Angular grunt 构建中更新

    我知道有关此问题的SO线程 我在下面链接了它们 但不幸的是我无法用它们解决这个问题 所以请允许我这个问题 我使用 Yeoman 启动了一个 AngularJS 项目 因此依赖于使用 Bower js 和 SCSS 的 grunt js 构建
  • 无法远程连接到Python Socket

    我已经使用 python 套接字和 Tkinter 创建了一个聊天应用程序 它在本地运行得很好 但是客户端无法远程连接到服务器 当我输入我的公共 IP 地址作为主机时 我已经完全端口转发了我的网络并且我知道如何很好地进行端口转发 当我运行在
  • 错误:在 Google 应用引擎上部署节点 js 时找不到模块“/workspace/server.js”

    经过一周的搜索 我无法找到适用于我的 Node js 应用程序的应用程序引擎部署问题的解决方案 我已经用这个替换了原来的代码Express 的 hello world 示例 https expressjs com en starter he
  • Rails 的 Puma Systemd 配置不起作用

    我已经完成了一个使用 Ruby on Rails 构建的应用程序 现在我想将其托管在 AWS 上的 EC2 实例上 我已经为其配置了服务器 并且正在使用pumaHTTP服务器作为应用服务器 在生产中启动应用程序总是需要我运行RAILS EN
  • AngularJS with Grunt - 连接到另一台服务器

    我使用 grunt bower 和 yeoman 创建了一个 AngularJS 应用程序 我猜想 Gruntfile js 在 2014 年 1 月之后发生了变化 不确定 这是我的gruntfile js Generated on 201
  • Laravel Vue js spa 应用程序

    1 我想知道为什么人们使用两台服务器用 laravel 制作 vuejs SPA 我想我们可以用另一种方式 制定这样的路线 Route get any function return view index gt where any 并让 v
  • 让 karma 服务器在 grunt watch 上启动

    在开发过程中 我使用 karma 和 grunt 来监视文件更改并运行测试 在命令行中 我希望能够简单地输入 grunt watch 并让 karma 服务器启动一次 然后每当文件更改时 grunt 监视更改并运行各种任务 包括 karma
  • 如何在 yeoman/grunt 项目中自动包含脚本?

    我有一个正在工作的自耕农项目 我正在使用 grunt usemin 为了包含 javascript 我在以下位置执行此操作index html
  • Grpc - 将消息从一个客户端发送到连接到同一服务器的另一个客户端

    是否可以将消息从一个客户端发送到连接到同一服务器的另一个客户端 我想将数据从一个客户端发送到服务器然后发送到特定客户端 我想我需要获取客户端 ID 但我不知道如何获取此 ID 以及如何从服务器将此消息发送到该客户端 我这里有一个样本 这是一
  • .htaccess 主要用于 localhost

    我在本地主机上使用 wamp server 虚拟主机名为www xyz com我有一个通过 git 设置的部署服务 它将代码部署到服务器上www xyz in 这是我的 htaccess 代码 RewriteEngine on Rewrit
  • Web 服务器是否可以向自身发出 HTTPS 请求?

    假设您有两个应用程序 A 和 B 在同一 Web 服务器上运行 您希望应用程序 A 通过 SSL 调用应用程序 B 上的 webService 是否可以使用类似的地址来做到这一点https localhost appsB webServic
  • 使用 grunt 编译具有不同变量的 LESS

    我有基于 Bootstrap 的 HTML 模板 有不同的颜色 红色 绿色等 颜色正在改变使用 brand变量在variables less 现在我转到这个文件 更改变量 编译 less 文件 进入已编译的 css 文件目录并重命名 CSS
  • 防止使用 golang 服务器访问文件夹中的文件

    我在 golang 中有一个服务器可以处理这样的文件夹路径 fs http FileServer http Dir assets http Handle Images fs http ListenAndServe 8000 nil 但在这个
  • Nuxt.js 使用 https 调用服务器端 API 的问题

    当我使用 HTTP 时 我遇到 nuxt 服务器端 API 调用问题S 在客户端 一切都很好 当我通过链接在客户端切换页面时 API 可以工作 但是当我按下 Ctrl f5 并且数据将在服务器端预取时 实际上没有 API 调用 也没有提供数
  • 自动备份远程托管服务器的最佳实践

    我正在尝试设置一个用于团队笔记的服务器 我想知道自动备份其数据 又称我的笔记 的最佳方法是什么 目前我计划在 docker 镜像中运行服务器 docker 镜像将由托管服务 例如 Google 托管 我找到了一个适合我的需求的免费托管服务
  • 如何在 VS 2013 中将自定义事件绑定到 grunt 任务运行器

    我知道任务执行者 http www hanselman com blog IntroducingGulpGruntBowerAndNpmSupportForVisualStudio aspx作为视觉工作室扩大 https visualstu
  • 生成源映射时出错 - grunt 和 sass 配置

    我正在尝试将 sass 与 grunt 一起使用 我已经在我的路径中安装了 ruby sass 和 grunt 版本是 节点 0 10 20npm 11 3 1grunt cli 0 1 13咕噜声 0 4 5萨斯 3 4 4 我的包 js
  • 如何安装 grunt-cli 而不出现错误?

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

随机推荐

  • C# 中的 Xml 比较

    我正在尝试使用 C 代码比较两个 Xml 文件 我想忽略 Xml 语法差异 即前缀名称 为此我正在使用微软的C API 它适用于某些 Xml 但我找不到将其配置为与以下两个 Xml 一起使用的方法 XML A
  • 如何打开一个文件以进行读和写?

    有没有办法打开一个文件进行读取和写入 作为解决方法 我打开文件进行写入 关闭它 然后再次打开它进行读取 但是有没有办法打开文件both读写 以下是如何读取文件 然后写入文件 覆盖任何现有数据 而无需关闭并重新打开 with open fil
  • jQuery的toggleClass回调如何进行?

    我有这个简单的 jQuery 事件toggleClass this on click function this toggleClass fa stop circle 我想调用一些方法 如果fa stop circle被添加 我如何监控此事
  • Docker:从另一台服务器的私有注册表中提取问题

    我刚刚开始学习docker 我有一个在一台服务器 server1 上运行的私有注册表 并且可以通过键入以下内容从 server1 上提取测试映像 docker pull 127 0 0 1 5000 test 但是 当我从另一台服务器键入上
  • libgdx Shaperenderer line ..如何绘制特定宽度的线

    我正在尝试使用 libgdx 形状渲染器绘制一条特定宽度的线 我跟着这个link https stackoverflow com questions 18650619 increasing the width of line drawn u
  • R - 图中线交点的坐标

    的结构data是以下 df1 lt structure list V2 1 10 V1 c 1 4 1 5 1 9 4 5 6 7 7 8 8 1 8 2 8 3 8 9 class data frame row names c NA 10
  • 计算位数 - 哪种方法最有效?

    查找给定数字中的位数有不止一种解决方案 例如 方法一 int findn int num char snum 100 sprintf snum d num return strlen snum 方法2 int findn int num i
  • MIPS 寄存器 $0 可以用来存储和检索值吗?

    当我了解 MIPS 处理器时 我的脑海中牢记着读取 0 寄存器总是返回 0 而写入 0 总是被丢弃 来自 MIPS 程序员手册 2 13 4 1 CPU 通用寄存器 r0 被硬连线到一个值 零 并且可以用作任何指令的目标寄存器 结果是被丢弃
  • Windows 服务中 RuntimeHelpers.PrepareMethod 的缺点[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在调查服务器 具有多个服务 启动后不久发生的延迟问题 我添加了一个简单的方法来加载引用的 DLL 并执行RuntimeHelpers Pre
  • 如何通过SW在AMP页面中包含自定义JS?

    我们已经浏览了所有可能的 AMP 博客 但找不到任何在 AMP 中包含自定义 JS 的方法 这个博客 https www ampproject org docs guides pwa amp amp as pwa extend your a
  • 类似 Chrome 的菜单显示

    我正在尝试查找一些有关如何创建看起来像 Android chrome 菜单顶部的菜单的信息 我尝试过为 Android 4 0 实现图标 但没有成功 尝试过谷歌搜索 但我发现的唯一答案是当 API gt 11 时无法实现图标 那么 Chro
  • JavaScript 中相当于 PHP 中的 var_dump 或 print_r 的是什么? [复制]

    这个问题在这里已经有答案了 我想查看 JavaScript 中对象的结构 用于调试 PHP中有类似var dump的东西吗 大多数现代浏览器的开发工具中都有一个控制台 对于此类调试很有用 console log myvar 然后 您将在控制
  • Python BaseHTTPServer.HTTPServer - 启动和停止事件的回调

    参考 http docs python org 2 library basehttpserver html http docs python org 2 library basehttpserver html 我有以下使用的代码片段Pyth
  • JPA GenerationType.AUTO 不考虑具有自动增量的列

    我有一个表 其中有一个简单的 int id 列 在 SQL Server 中具有身份自动增量 实体的 Id 注释为 Id and GeneratedValue Id GeneratedValue strategy GenerationTyp
  • 如何在 django 中安全地存储第三方服务的密码?

    我正在 Django 上运行 Web 服务 用户注册到我的系统并向我提供第三方网络服务的登录详细信息 用户名和密码 我的目的是以最好 最安全的方式存储这些详细信息 不幸的是 我的服务需要这些数据来用于查询第 3 方服务的某些离线脚本 因此我
  • event.stopPropagation() 不起作用 - 捕获仍然传递函数

    首先 我是一个菜鸟 抱歉 如果这个问题足够基本 其次 我尝试搜索 正如我所看到的 我按照其他帖子中的说明应用了解决方案 话虽这么说 我有三组 DIV 每组由 2 个 Div 组成 一个在另一个里面 在 OUTER div 上有一个函数 表示
  • 如何确定是否为 TFS 构建定义执行了 MSBUILD 参数

    我正在使用 Team Foundation Service 2012 带有内部托管的构建控制器 以便我可以将应用程序部署到我们的 Web 服务器 我设置了构建定义 并使用我的调试配置 并提供了以下 MSBUILD 参数 p DeployOn
  • 使用 jQuery 显示/隐藏表格列

    我有一个有五列的表格 column1 column2 column3 column4 column5 当选中第一个复选框时 我有一些复选框 每个复选框对应一列 然后我需要显示第一列 如果未选中我需要隐藏第一列 像那样 我需要对所有列进行操作
  • 我可以将 git 上的分叉项目更新为原始/主副本吗?

    几周前 我在 GitHub 上分叉了一个公共项目 今天 我想尝试一些东西 但我想确保我使用的副本是最新的 我可以先更新我的前叉吗 如果在我开始更改后对叉子进行更改 会发生什么情况 我可以再次更新我的分叉 同时将我的更改保留在那里 即合并 如
  • 如何让 grunt 服务任务与 watch 一起工作?

    我最近安装并启动并运行了它 但我似乎无法让它与我的手表任务同时运行 在我的 grunt 文件中 如果在监视之前注册服务任务 服务器会旋转 但监视任务不会 反之亦然 这是服务包 我正在使用并附加了 Grunt 文件 https www npm