0

我需要在我的 index.html 页面中插入一个代码片段,只有当 Grunt livereload 正在运行时。基本思想是运行一个假的 HTTP 服务器(只需几行 sinonjs 就很容易),但只有当我使用 Grunt 处于开发模式时。

我知道这是可行的,因为 Grunt livereload 自己在 HTML 页面的底部插入了一个片段,问题是我如何像 livereload 任务一样插入我自己的代码片段?

非常感谢,

大卫。

4

1 回答 1

0

根据您希望注入 HTML 的位置,您可以执行以下操作(完全未经测试):

var livereloadUtils = require('grunt-contrib-livereload/lib/utils');
var oldGetSnippet = livereloadUtils.getSnippet;
livereloadUtils.getSnippet = function() {
    var snippet = oldGetSnippet();
    // add your snippet stuff to snippet. So either:
    // snippet += '<p>your html</p>'; //or
    // snippet = '<p>your html</p>' + snippet;
    return snippet;
};
var lrSnippet = livereloadUtils.livereloadSnippet;

这只会在</body>. 查看libs/utils.js以更好地了解正在发生的事情。

于 2013-07-23T14:30:40.307 回答