Grunt Uncss PhantomJS Wordpress ReferenceError:无法找到变量:JQuery

时间:2016-11-27 04:37:16

标签: wordpress gruntjs phantomjs uncss

我正在使用WordPress网站在MAMP上使用grunt-uncss。我把所有的css文件都合并到一个文件中。

结果:一个网址需要40分钟才能完成。这不会有效。另外,unss只是吐出与之相同的css。

许多错误都是" ReferenceError:无法找到变量:jQuery"但它像PhantomJS / UnCSS一样试图解析内联javascript?

以下是其他一些内容:

SyntaxError:意外的令牌'%'

local:在setContent中为193   :2 SyntaxError:标识符中的转义无效:' \'

local:setContent中的427   :2 SyntaxError:意外的令牌'<'

local:setContent中的891   :2 SyntaxError:意外的令牌','

我尝试了不同的方法,包括为jQuery加载更多时间(超时)以及过去七小时内的goo&g; gling。我很确定问题出在PhantomJS上,但我并不熟悉它。寻求帮助

这是我的gruntfile

module.exports = function(grunt) {

   require('time-grunt')(grunt);

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

      jshint: {
        all: ['gruntfile.js']
      },

  exec: {
      get_grunt_sitemap: {
         command: 'curl --silent --output sitemap.json http://localhost:8888/applus/?show_sitemap'
      }
    },

  uncss: {
     dist: {
        options: {
      ignore       : [
                /expanded/,
                /js/,
                /wp-/,
                /align/,
                /admin-bar/,
                /\w\.in/,
                ".fade",
                ".collapse",
                ".collapsing",
                /(#|\.)navbar(\-[a-zA-Z]+)?/,
                /(#|\.)dropdown(\-[a-zA-Z]+)?/,
                /(#|\.)(open)/,
                ".modal",
                ".modal.fade.in",
                ".modal-dialog",
                ".modal-document",
                ".modal-scrollbar-measure",
                ".modal-backdrop.fade",
                ".modal-backdrop.in",
                ".modal.fade.modal-dialog",
                ".modal.in.modal-dialog",
                ".modal-open",
                ".in",
                ".modal-backdrop",
                '.hidden-xs', 
                'hidden-sm'

                ],
      stylesheets  : ['wp-content/themes/vest/css/consolidated.css'],
      ignoreSheets : [/fonts.googleapis/],
      urls         : [], //Overwritten in load_sitemap_and_uncss task
    },
    files: {
      'wp-content/themes/vest/style.test.css': ['**/*.php']
    }
  }
}

  });

// 3. Where we tell Grunt we plan to use this plug-in.
      grunt.loadNpmTasks('grunt-contrib-jshint');
      grunt.loadNpmTasks('grunt-exec');   
      grunt.loadNpmTasks('grunt-uncss');

// 4. Where we tell Grunt what to do when we type "grunt" into the terminal.
      grunt.registerTask('load_sitemap_json', function() {
      var sitemap_urls = grunt.file.readJSON('./sitemap.json');
      grunt.config.set('uncss.dist.options.urls', sitemap_urls);
 });

  grunt.registerTask('deploy'['jshint','exec:get_grunt_sitemap','load_sitemap_json','uncss:dist']);  
 };

1 个答案:

答案 0 :(得分:0)

好的,那么回答我自己的问题。我似乎错误配置了MAMP的样式表和文件网址?一旦我创建了文件的硬链接。除了那些由用户交互触发的事件外,一切似乎都有效。

以下是我所做的更改:

stylesheets  : ['http://localhost:8888/wp-content/themes/vest/css/consolidated.css'],



files: [{
                nonull: true,
                src: ['http://localhost:8888/applus'],
                dest: '/Applications/MAMP/htdocs/applus/wp-content/themes/cannavest/uncss-style.css'
    }]

提示:对于WordPress,您应该查看您的页面源,并按照它们在页面源中显示的特定顺序将所有css复制到一个css文件中(因此 - consolidated.css)。这样你就可以保持尽可能多的css继承你已完成的网站。