zoukankan      html  css  js  c++  java
  • webpack2使用ch5-多页面设置 内部js和引入js

    1 当前目录

    2 webpack.config.js 配置

    const webpack = require('webpack'),
          htmlWebpackPlugin = require('html-webpack-plugin'),
          path = require('path');
    
    module.exports = {
        entry: {
          main: './src/script/main.js',
          a: './src/script/a.js',
          b: './src/script/b.js',
          c: './src/script/c.js'
        },
        output: {
            path: path.resolve(__dirname, './dist'),
            filename: 'js/[name]-[chunkhash].js',
            publicPath: 'http://cdn.com/'
        },
        plugins: [
            new htmlWebpackPlugin({
                filename: 'a.html',
                template: 'index.html',
                inject: 'body',
                title: 'this is a',
                excludeChunks: ['b', 'c']  //不包括的chunks
            }),
            new htmlWebpackPlugin({
                filename: 'b.html',
                template: 'index.html',
                inject: 'body',
                title: 'this is b',
                excludeChunks: ['a', 'c']
            }),
            new htmlWebpackPlugin({
                filename: 'c.html',
                template: 'index.html',
                inject: 'body',
                title: 'this is c',
                excludeChunks: ['a', 'b']
            })
        ]
    };

    4 根目录模板 index.html

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title><%= htmlWebpackPlugin.options.title %></title>
        <!--将mian.js写在页面里面
            去掉不带publicPath的内容如 http://cdn.cn/
            compilation.assets[].source()
         -->
        <script type="text/javascript">
            <%= compilation.assets[htmlWebpackPlugin.files.chunks.main.entry.substr(htmlWebpackPlugin.files.publicPath.length)].source() %>
        </script>
    </head>
    <body>
    
        <!--如果chunk有main.js就不引入 因为上面引入了??????-->
        <% for(var key in htmlWebpackPlugin.files.chunks){ %>
           <% if(key !== 'main'){ %>
                <script type="text/javascript" src="<%= htmlWebpackPlugin.files.chunks.entry %>"></script>
           <% } %>
        <% } %>
    </body>
    </html>

    5 打包

    6 查看变化

    6.1 a.html

    6.2 b.html

    6.3 c.html

  • 相关阅读:
    matlab关闭文件
    matlab字符串比较
    matlab画直线
    已解决:TeamViewer使用的设备数量上限
    ubuntu安装teamviewer,缺少依赖处理
    木心的话
    SQL 语句中 where 条件后 写上1=1 是什么意思
    NetCore获取当前请求URL的方法
    NetCore3.1 日志组件 Nlog的使用
    Mysql并发时经典常见的死锁原因及解决方法
  • 原文地址:https://www.cnblogs.com/easyweb/p/6673968.html
Copyright © 2011-2022 走看看