2017-07-17 4 views
0

私はwebpackを学習しており、チャンクハッシュ機能の使い方を教えています。このgithubの例では、プラグインで「マニフェスト」という名前を使用しています。チャンクハッシュのWebpackのマニフェスト意味

これは何のためですか?私はそのユースケースについて何の説明も見つけられませんでした。

ありがとうございます。

var path = require("path"); 
var webpack = require("../../"); 
module.exports = { 
    entry: { 
     main: "./example", 
     common: ["./vendor"] // optional 
    }, 
    output: { 
     path: path.join(__dirname, "js"), 
     filename: "[name].[chunkhash].js", 
     chunkFilename: "[chunkhash].js" 
    }, 
    plugins: [ 
     new webpack.optimize.CommonsChunkPlugin({ 
      names: ["common", "manifest"] 
     }) 
     /* without the "common" chunk: 
     new webpack.optimize.CommonsChunkPlugin({ 
      name: "manifest" 
     }) 
     */ 
    ] 
}; 

答えて

1

少し遅れていますが、私はあなたの質問に直面しました。この設定では、Webpackのランタイムとマニフェストデータが別々のチャンクに抽出されます。

挙動はhttps://webpack.js.org/plugins/commons-chunk-plugin/#manifest-fileここに記載されている:

entryとして定義されていないnameCommonsChunkPluginを使用し、別のファイルにWebPACKのブートストラップ・ロジックを抽出します。一般的に の名前はmanifestです。

別のファイルにそれを抽出するための理由はうまくここで説明されている間、あなたはhttps://webpack.js.org/concepts/manifest/でマニフェストについての詳細を読むことができます:https://medium.com/webpack/predictable-long-term-caching-with-webpack-d3eee1d3fa31とここを:https://webpack.js.org/guides/caching/(それは彼らのキャッシュを改善するために、ベンダーチャンクの予測可能な命名のために必須です) 。