zoukankan      html  css  js  c++  java
  • [Webpack 2] Grouping vendor files with the Webpack CommonsChunkPlugin

    Often, you have dependencies which you rarely change. In these cases, you can leverage the CommonsChunkPlugin to automatically put these modules in a separate bundled file so they can be cached and loaded separately from the rest of your code (leveraging the browser cache much more effectively).

    The libaraies like 'lodash', 'jquery' are required alomost all the projects and once download, rarly change any more. So it would be a good idea to spreate those common libaries into a common vendor file.

      entry: {
        app: './js/app.js',
        vendor: ['lodash', 'jquery'],
      },

    So rename the entry, add 'app' and 'vendor' entries.

    So the output file canbe named like 'bundle.app.js' and 'bundle.vendor.js':

      output: {
        filename: 'bundle.[name].js',
        path: resolve(__dirname, 'dist'),
        pathinfo: true,
      },

    We will use webpack build in CommonsChunkPlugin:

      plugins: [
        isTest ? undefined : new webpack.optimize.CommonsChunkPlugin({
          name: 'vendor',
        }),
      ].filter(p => !!p),

    Now we can include those two bundle files into index.html:

        <script src="/bundle.vendor.js"></script>
        <script src="/bundle.app.js"></script>
  • 相关阅读:
    [POJ] 食物链
    [POJ] Palindrome
    [POJ] The Triangle
    [Cpp primer] Library vector Type
    Shift Operations on C
    Masking operations
    [CSAPP] The Unicode Standard for text coding
    [Cpp primer] Library string Type
    [Cpp primer] range for (c++11)
    [Cpp primer] Namespace using Declarations
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5609140.html
Copyright © 2011-2022 走看看