src()#

ファイルシステムからVinylオブジェクトを読み取るためのストリームを作成します。

注記: BOM(バイト順序マーク)はUTF-8では無意味であり、removeBOMオプションを無効にしない限り、src()によって読み取られるUTF-8ファイルから削除されます。

使用方法#

const { src, dest } = require('gulp');
function copy() {
return src('input/*.js')
.pipe(dest('output/'));
}
exports.copy = copy;

シグネチャ#

src(globs, [options])

パラメータ#

パラメータ備考
globs文字列
配列
ファイルシステムで監視するGlob
optionsオブジェクト下記のオプションで詳述されています。

戻り値#

指定されたglobに基づいてファイルを追加するために、パイプラインの先頭または途中で使用できるストリーム。

エラー#

globs引数が1つのファイル(例:foo/bar.js)のみに一致する場合、一致が見つからないと、「単一globでファイルが見つかりません」というメッセージを含むエラーがスローされます。このエラーを抑制するには、allowEmptyオプションをtrueに設定します。

globsに無効なglobが指定されている場合、「無効なglob引数」というメッセージを含むエラーがスローされます。

オプション#

関数を受け入れるオプションの場合、渡された関数は各Vinylオブジェクトで呼び出され、別のリストされている型の値を返す必要があります。

名前デフォルト備考
bufferブール値
関数
truetrueの場合、ファイルの内容はメモリにバッファリングされます。falseの場合、Vinylオブジェクトのcontentsプロパティは一時停止されたストリームになります。大きなファイルの内容をバッファリングできない場合があります。
注記: プラグインは、ストリーミングコンテンツのサポートを実装していない場合があります。
readブール値
関数
truefalseの場合、ファイルは読み取られず、そのVinylオブジェクトは.dest()を介してディスクに書き込み可能になりません。
since日付
タイムスタンプ
関数
設定されている場合、指定された時刻以降に変更されたファイルに対してのみVinylオブジェクトを作成します。
removeBOMブール値
関数
truetrueの場合、UTF-8でエンコードされたファイルからBOMを削除します。falseの場合、BOMを無視します。
sourcemapsブール値
関数
falsetrueの場合、作成されたVinylオブジェクトでsourcemapsサポートを有効にします。インラインソースマップを読み込み、外部ソースマップリンクを解決します。
resolveSymlinksブール値
関数
truetrueの場合、シンボリックリンクを再帰的にターゲットに解決します。falseの場合、シンボリックリンクを保持し、Vinylオブジェクトのsymlinkプロパティに元のファイルのパスを設定します。
cwd文字列process.cwd()相対パスと組み合わせて絶対パスを形成するディレクトリ。絶対パスでは無視されます。globspath.join()の組み合わせを避けるために使用します。
このオプションは、glob-streamに直接渡されます。
base文字列作成されたVinylオブジェクトのbaseプロパティを明示的に設定します。API概念で詳述されています。
このオプションは、glob-streamに直接渡されます。
cwdbaseブール値falsetrueの場合、cwdbaseオプションを揃える必要があります。
このオプションは、glob-streamに直接渡されます。
root文字列globsが解決されるルートパス。
このオプションは、glob-streamに直接渡されます。
allowEmptyブール値falsefalseの場合、1つのファイルのみに一致する可能性のあるglobs(例:foo/bar.js)は、一致が見つからない場合、エラーがスローされます。trueの場合、globの失敗を抑制します。
このオプションは、glob-streamに直接渡されます。
uniqueBy文字列
関数
'path'文字列プロパティ名または関数の結果を比較することで、ストリームから重複を削除します。
注記: 関数を使用する場合、関数はストリーミングデータ(cwdbasepathプロパティを含むオブジェクト)を受け取ります。
dotブール値falsetrueの場合、.gitignoreなどのドットファイルに対してglobを比較します。
このオプションは、node-globに直接渡されます。
silentブール値truetrueの場合、stderrへの警告の出力は抑制されます。
注記: このオプションはnode-globに直接渡されますが、falseではなくtrueにデフォルト設定されています。
markブール値falsetrueの場合、ディレクトリの一致に/文字が追加されます。パスはパイプライン内で正規化されるため、一般的には必要ありません。
このオプションは、node-globに直接渡されます。
nosortブール値falsetrueの場合、globの結果のソートは無効になります。
このオプションは、node-globに直接渡されます。
statブール値falsetrueの場合、すべての結果でfs.stat()が呼び出されます。これによりオーバーヘッドが増加するため、一般的には使用しないでください。
このオプションは、node-globに直接渡されます。
strictブール値falsetrueの場合、ディレクトリの読み取りを試行中に予期しない問題が発生すると、エラーがスローされます。
このオプションは、node-globに直接渡されます。
nouniqueブール値falsefalseの場合、結果セット内の重複ファイルを防止します。
このオプションは、node-globに直接渡されます。
debugブール値falsetrueの場合、デバッグ情報はコマンドラインに出力されます。
このオプションは、node-globに直接渡されます。
nobraceブール値falsetrueの場合、ブレースセット(例:{a,b}または{1..3})の展開は行われません。
このオプションは、node-globに直接渡されます。
noglobstarブール値falsetrueの場合、二重星glob文字は単一星glob文字として扱われます。
このオプションは、node-globに直接渡されます。
noextブール値falsetrueの場合、extglobパターン(例:+(ab))の一致は行われません。
このオプションは、node-globに直接渡されます。
nocaseブール値falsetrueの場合、大文字と小文字を区別しない一致を実行します。
注記: 大文字と小文字を区別しないファイルシステムでは、マジックではないパターンはデフォルトで一致します。
このオプションは、node-globに直接渡されます。
matchBaseブール値falsetrueの場合、globに/文字が含まれていない場合、すべてのディレクトリをトラバースしてそのglobに一致させます(例:*.js**/*.jsと同等として扱われます)。
このオプションは、node-globに直接渡されます。
nodirブール値falsetrueの場合、ファイルのみに一致し、ディレクトリには一致しません。
注記: ディレクトリにのみ一致させるには、globの最後に/を付けます。
このオプションは、node-globに直接渡されます。
ignore文字列
配列
一致から除外するglob。このオプションは、否定されたglobsと組み合わせられます。
注記: これらのglobは、他の設定に関係なく、常にドットファイルに対して一致します。
このオプションは、node-globに直接渡されます。
followブール値falsetrueの場合、** globを展開する際に、シンボリックリンクされたディレクトリがトラバースされます。
注記: これは循環リンクの問題を引き起こす可能性があります。
このオプションは、node-globに直接渡されます。
realpathブール値falsetrueの場合、fs.realpath()がすべての結果に対して呼び出されます。これにより、ぶら下がりリンクが発生する可能性があります。
このオプションは、node-globに直接渡されます。
cacheオブジェクト事前に生成されたキャッシュオブジェクトです。ファイルシステム呼び出しの一部を回避します。
このオプションは、node-globに直接渡されます。
statCacheオブジェクト事前に生成されたfs.Stat結果のキャッシュです。ファイルシステム呼び出しの一部を回避します。
このオプションは、node-globに直接渡されます。
symlinksオブジェクト事前に生成されたシンボリックリンクのキャッシュです。ファイルシステム呼び出しの一部を回避します。
このオプションは、node-globに直接渡されます。
nocommentブール値falsefalseの場合、globの先頭にある#文字をコメントとして扱います。
このオプションは、node-globに直接渡されます。

ソースマップ#

ソースマップのサポートはsrc()dest()に直接組み込まれていますが、デフォルトでは無効になっています。インラインまたは外部ソースマップを生成するには、有効にしてください。

インラインソースマップ

const { src, dest } = require('gulp');
const uglify = require('gulp-uglify');
src('input/**/*.js', { sourcemaps: true })
.pipe(uglify())
.pipe(dest('output/', { sourcemaps: true }));

外部ソースマップ

const { src, dest } = require('gulp');
const uglify = require('gulp-uglify');
src('input/**/*.js', { sourcemaps: true })
.pipe(uglify())
.pipe(dest('output/', { sourcemaps: '.' }));