问题标签 [grunt-contrib-connect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2716 浏览

node.js - 转发 grunt 连接到不同的 url

我在我的开发环境中使用 grunt connect 和 livereload。

我希望能够调用 /server 下的生产 api。

为此,我需要直接从

http://localhost:9000/server

http://www.production-server.com/server

这对我有好处,因为有时我想在开发模式下对生产服务器进行测试。

这是我当前的连接配置(由 Yeoman 生成):

0 投票
1 回答
96 浏览

node.js - 在 grunt-contrib-connect 中打开任务,在 appName 参数中指定浏览器模式和文档模式

我正在使用 nodeJS 来自动化我的 javascript Web 应用程序开发,并且我始终必须确保该应用程序在包括 IE >=8 在内的所有浏览器中都能正常工作,现在我在我的笔记本电脑上安装了 IE10,并且我正在使用grunt-contrib-connect包打开应用程序多个浏览器使用这样的连接任务

现在,我想要的是在 IE 中打开并指定文档模式和浏览器模式(使用 nodeJS/grunt),是否可以这样做?

提前致谢!

0 投票
1 回答
149 浏览

node.js - grunt-contrib-connect:只能访问 root,仅在 CI 服务器上

我一直在用头撞墙,试图弄清楚发生了什么,我希望有人能提供帮助。

我正在使用grunt-contrib-connect启动一个静态服务器来运行 mocha 规范反对使用 selenium。在本地 OS X 10.10 上,一切正常。精彩的。

但是,在 CI(信号量)上,服务器启动,规范开始运行,第一个命中的规范/没有问题地通过。但是,连接到所有的下一个规范/path/to/html/都失败了。我提出了一些curl请求,看看这是否只是一个测试问题,我可以curl http://localhost:3023正常工作,curl http://localhost:3023/path/to/html/404s。这些文件正是它们应该在的位置,就像我说的那样,这一切都在我的本地机器上运行。

任何想法可能会发生什么?这是我的咕噜声配置:

connect: { options: { port: 4000, hostname: 'localhost', livereload: 35729 }, livereload: { options: { middleware: function(connect) { return [ // Load the middleware provided by the livereload plugin // that will take care of inserting the snippet require('grunt-contrib-livereload/lib/utils').livereloadSnippet, connect.bodyParser(), connect.static(paths.dist.root) ]; } } }, test: { options: { port: 3023, host: '*', base: paths.dist.root, livereload: false, debug: true, directory: paths.dist.root, middleware: function(connect) { return [ connect.static(paths.dist.root) ]; } } }, dist: { options: { port: 1338, open: 'http://localhost:1338/', base: paths.dist.root, livereload: false, keepalive: true } } },

我正在呼吁connect:test测试任务。任何帮助将不胜感激。

0 投票
2 回答
692 浏览

javascript - 从 grunt-contrib-connect 请求对象中获取数据

所以这可能是一个非常简单的问题,但我已经在谷歌上搜索了一个多小时,但什么也没找到。我也只是尝试打印出请求对象,但没有看到任何有用的东西。

如何在 grunt-contrib-connect 中间件定义中获取客户端请求的数据或正文?

0 投票
1 回答
100 浏览

javascript - grunt-contrib-connect 忽略任务选项

我已经配置了 grunt-contrib-connect 但服务器没有保持活动状态:

包.json

Grundfilesnippet:

运行任务“服务器”时,服务器启动和停止,忽略选项:

但是更改配置如下:

使任务运行“connect:abc”并选择选项。为什么忽略任务默认选项?

0 投票
1 回答
263 浏览

angularjs - Grunt 与基本 html 标记连接

我正在为某人开发一个 angularjs 网站,他们要放置的网站是这样的

因此,为了让我的链接正常工作,我在 head 标签中添加了以下内容,以使链接在生产中正常工作

但是现在当我使用 grunt connect 时,由于该基本元素,没有任何效果。我想,当我在本地工作时,我可以评论它,但我担心我会忘记把它放回去。感谢您的任何提示。

这是我的 grunt 文件的一部分

我检查的帖子没有给我任何答案:

0 投票
2 回答
678 浏览

node.js - Grunt-contrib-watch 与 grunt-contrib-connect

不幸的是,grunt-contrib-watchgrunt-contrib-connect似乎表现不佳。

在 grunt-contrib-connect自述文件中它说:

请注意,该服务器仅在 grunt 运行时运行。一旦 grunt 的任务完成,Web 服务器就会停止。可以使用 keepalive 选项更改此行为,并且可以通过运行诸如 grunt connect::keepalive 之类的任务来临时启用此行为。

美好的。但是,如果我想与连接服务器一起运行我的监视任务怎么办?像这样:

在这里,connect任务在文件更改时运行。如果我将 connect 的keepalive选项设置为 true,则 grunt-contrib-watch 将停止观看,因为它在技术上还没有完成它的任务。如果我伪造了该keepalive选项,那么连接服务器在完成任务后就会死机。

是的,我可以运行命令...

...在单独的外壳中,但是没有办法用一个命令运行它们吗?

0 投票
3 回答
2748 浏览

node.js - Grunt 连接未以错误“根路径必须是字符串”开头

我正在尝试设置我的 Gruntfile 以使用 grunt connect npm 模块。尝试使用命令启动服务器时遇到问题grunt clean server。它与该行错误:

我真的不确定我搞砸了什么配置并且可以使用另一组眼睛。这是我的 Gruntfile:

当我使用--verbose标志时,我得到以下几行:

在我看来,问题在于,middlewareundefined我不知道为什么会这样。

任何帮助表示赞赏。

0 投票
1 回答
231 浏览

gruntjs - 注入前如何更改路径

是否可以在注入发生之前更改注入文件的路径?

我正在使用 Grunt/Bower/Connect/Wiredep,我的目录结构是:

(注意:在我添加的 .bowerrc 文件中directory: vendor

当我运行自定义任务grunt serve:dev时,它将创建目录dev-dist,然后我将我的 index.html(仅)复制到文件夹,然后运行任务wiredep

运行后wiredep,我的依赖项的 src 路径都以 '../vendor/' 为前缀。问题是当我运行时connect我有选项base: ['vendor', 'dev-dist', 'src']。当一切都被提供时,供应商的相对路径没有任何意义,因为供应商目录已经在根目录中提供。

有没有办法在wiredep注入文件之前修改注入文件的路径?(所以我可以删除'../vendor')

我希望发生的是从同一个工作区能够运行grunt serve:*和指定 dev/stage/prod 环境。这就是为什么我不想为整个 www 目录提供服务。

有没有办法在连接中排除文件夹?(因此,我可以排除 stage-dist / prod-dist 文件夹,而不是指定 base:[...])

谢谢,

京东

0 投票
1 回答
755 浏览

gruntjs - 设置 grunt 以启动和实时重新加载浏览器(使用最少的插件)

我正在建立一个 Web 项目,并希望将 grunt 用于自动化和工作流程。我有 sass、jshint、jsdocs、minifiers 都玩得很好,但是从 grunt shell 启动和重新加载浏览器时遇到了无穷无尽的麻烦。

在执行此操作时,我有两个条件要满足:

没有浏览器插件。(我希望它直接从 repo 中工作;“npm install”、“grunt”)将 npm 模块保持在最低限度。(理想情况下只是 grunt-contrib-watch 和 grunt-contrib-connect)

这是我对这两个的配置:

在测试中我也尝试过:

当文件更改时,Watch 会告诉我,但运行默认任务(或它的任何子任务)不会启动浏览器/页面,并且似乎没有重新加载。

我在 grunt-open 方面取得了一些成功,但我相信在 0.6.0 版本之后只需 grunt-contrib-watch 就可以实现它吗?

----- 另外我也不确定 grunt-contrib-connect 是否正在运行...

结果如下,我没有看到任何连接时间,我猜该任务没有被测量,因为它并行运行,但这是发生了什么吗?