簡體   English   中英

Grunt-構建dist后的插件文件夾分解器

[英]Grunt - plugin folder disapper after build dist

我是Yeoman,Grunt和Bower的新手,當然在建立發行版時會遇到一些麻煩。

我用Yeoman搭建了一個Web應用程序,構建了代碼,添加了一個外部插件(不是通過bower,該插件沒有包,所以我只是復制了插件文件夾,並在index.html中添加了引用)

當運行grunt服務時,一切正常,我第一次用

grunt

我回來了很多關於該外部插件的jshint錯誤(缺少分號等...小東西),所以我只需要運行

grunt --force

建立我的dist。

在dist文件夾中,缺少外部插件文件夾和文件,因此在構建過程中刪除了該文件夾(但index.html文件具有對該文件的所有引用)。

所以用

grunt serve:dist

我在瀏覽器上安裝了dist,但沒有插件。 此時,我將plugin文件夾復制到dist文件夾的正確位置,重新加載頁面,並且該插件可以正常工作。 然后終止進程,我再次運行

grunt serve:dist

執行此命令后,插件文件夾(我手動復制的)就消失了,因此我意識到復制和粘貼不是使事情正常的正確方法。

我如何才能告訴grunt(或bower)將該文件夾(位於js文件夾內)放在同一位置,而不是嘗試壓縮其中的文件,不使用jshint忽略js驗證,而不是將其刪除?

如果要在根文件夾中添加一個新文件夾(例如jsons)怎么辦? 建立發行版時也會被刪除嗎? 有什么地方可以告訴grunt包括/忽略哪個文件夾?

謝謝

----編輯----

這是我在Gruntfile.js中的“復制”任務

copy: {
  dist: {
    files: [{
      expand: true,
      dot: true,
      cwd: '<%= config.app %>',
      dest: '<%= config.dist %>',
      src: [
        '*.{ico,png,txt}',
        'images/{,*/}*.webp',
        '{,*/}*.html',
        'styles/fonts/{,*/}*.*'
      ]
    }, {
      src: 'node_modules/apache-server-configs/dist/.htaccess',
      dest: '<%= config.dist %>/.htaccess'
    }]
  },
  styles: {
    expand: true,
    dot: true,
    cwd: '<%= config.app %>/styles',
    dest: '.tmp/styles/',
    src: '{,*/}*.css'
  }
}

這是“生產” Gruntfile.js

module.exports = function (grunt) {

  copy: {
    dist: {
      files: [{
        expand: true,
        dot: true,
        cwd: '<%= yeoman.app %>',
        dest: '<%= yeoman.dist %>',
        src: [
          //'*.{ico,png,txt}',
          '*.{txt}',
          '.htaccess',
          '*.html',
          '*.appcache',
          'views/{,*/}*.html',
          'images/{,*/}*.{webp}',
          'icons/**/*.{ico,png}',
          'scripts/i18n/{,*/}*.js',
          'i18n/{,*/}*.json',
        ]
      }, {
        expand: true,
        cwd: '.tmp/images',
        dest: '<%= yeoman.dist %>/images',
        src: ['generated/*']
      }, {
        expand: true,
        cwd: 'bower_components/bootstrap/dist',
        src: 'fonts/*',
        dest: '<%= yeoman.dist %>'
      }, {
        expand: true,
        cwd: 'bower_components/open-sans-fontface',
        src: 'fonts/**/*',
        dest: '<%= yeoman.dist %>/styles'
      }, {
        expand: true,
        cwd: 'bower_components/font-awesome',
        src: 'fonts/*',
        dest: '<%= yeoman.dist %>'
      }]
    },
  },

  ...

  grunt.registerTask('build', [
    'clean:dist',
    ...
    'copy:dist',
    ...
  ]);

  grunt.registerTask('default', [
    'build',
  ]);

};

閱讀http://gruntjs.com/getting-started (這是一個五分鍾的任務... :-)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM