使用grunt-critical和本地URL作为源



我将grunt-critical安装到一个PHP项目中,并希望从动态呈现的页面生成CSS。我想最简单的方法是使用localhost作为HTML源。

所以我使用了官方的grunt任务示例并对其进行了调整:

critical: {
  test: {
    options: {
      base: './',
      css: [
        'web/css/style.min.css'
      ],
      width: 320,
      height: 70
    },
    src: 'http://localhost:9000/',
    dest: 'web/css/critical.css'
  }
},

执行grunt critical抛出错误:

Running "critical:test" (critical) task
Unhandled rejection Error: socket hang up
    at createHangUpError (_http_client.js:203:15)
    at Socket.socketOnEnd (_http_client.js:288:23)
    at emitNone (events.js:72:20)
    at Socket.emit (events.js:166:7)
    at endReadableNT (_stream_readable.js:893:12)
    at doNTCallback2 (node.js:429:9)
    at process._tickCallback (node.js:343:17)

没有请求到达web服务器。是我错过了一个依赖关系,还是这不是正确的方法?

(编辑)以前我认为PHP服务器返回一个错误,但它是无关的!服务器上没有请求日志

远程URL获取使用grunt-criticalcss NPM模块效果很好,将官方示例调整如下:

criticalcss: {
    custom: {
        options: {
            url: "http://localhost:9000",
            width: 1200,
            height: 900,
            outputfile: "web/css/critical.css",
            filename: "web/css/style.css",
            buffer: 800*1024,
            ignoreConsole: false
        }
    }
},

最新更新