簡體   English   中英

使用gulp-bower-normalize將所有文件復制到一個目錄

[英]Use gulp-bower-normalize to copy all files to one directory

我可以使用gulp-bower-normalize將不同類型的文件從一個目錄復制到另一目錄嗎?

我以為可以這樣做,但是它只是根據文件擴展名將所有字體復制到其目錄中。

"overrides": {
    "font-awesome": {
        "main": [
            "css/font-awesome.min.css",
            "fonts/*"
        ],
        "normalize": {
            "fonts": "fonts/*.*"
        }
    }
}

main刪除"fonts/*"將僅復制css。

PS .:我知道我可以通過gulp.src()gulp.dest()來做到這一點,但是我想知道“規范化方式”。

//- gulpfile.js file
var bower = require('main-bower-files');
var bowerNorm = require('gulp-bower-normalize');
var DEST = './build/';

gulp.task('default', function () {
  return gulp.src(bower(), { base: './path/to/bower_components'})
    .pipe(bowerNorm({ flatten: true }))
    .pipe(gulp.dest(DEST));
});

//- bower.json file
"overrides": {
  "font-awesome": {
    "main": [
      "css/font-awesome.min.css",
      "fonts/*"
    ],
    "normalize": {
      "fonts": [ "*.eot", "*.svg", "*.ttf", "*.woff", "*.woff2" ]
    }
  }
}

以上應該可以解決您的問題。 當您在依賴項鍵(在本例中為"font-awesome" )下使用normalize鍵時,子鍵( "fonts" )代表您要創建的文件夾名稱。 該鍵的值是您要放入該目錄的文件類型。 因此,在上述解決方案中,我們要說的是,我們希望將"*.eot""*.svg""*.ttf""*.woff""*.woff2"文件放在"fonts"規范化依賴項時的目錄。

以上代碼的結果將是這樣的:

build/
├── css/
│   └── font-awesome.min.css
└── fonts/
    ├── some-font-file.eot
    ├── some-font-file.svg
    ├── some-font-file.ttf
    ├── some-font-file.woff
    └── some-font-file.woff2

讓我知道是否可以進一步澄清。

暫無
暫無

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

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