首页  >  问答  >  正文

javascript - webpack dllPlugin如何打包vendor到html里面?

使用html-webpack-plugin只能将应用的bundle.js写到html,不能将dll生成的vendor写入,有没有什么办法?

三叔三叔2686 天前1206

全部回复(2)我来回复

  • 扔个三星炸死你

    扔个三星炸死你2017-07-05 10:54:50

    可以使用 add-asset-html-webpack-plugin,将打包后的文件,加入html中。
    通过以下方式引用,或者参考下我的vue-2.0template

    喜欢的话可以给个star

    new HtmlWebpackPlugin({
      filename: itemPath,
      template: template,
      inject: true,
      title: item.title || 'Document',
      chunks: chunks,
      chunksSortMode: 'dependency',
    }),
    new AddAssetHtmlPlugin([{
      filepath: path.resolve(__dirname, config.build.dll.basePath, config.build.dll.fileName),
      outputPath: utils.assetsPath('common/js/'),
      publicPath: path.join(config.build.publicPath, 'common/js'),
      includeSourcemap: true
    }])

    回复
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-05 10:54:50

    自问自答:
    1、 将vendor.js生成到/dll/
    2、 template.html使用html-webpack-plugin的模板语法

    <body>
    <script src="<%= htmlWebpackPlugin.optiions.vendor %>"></script>
    </body>

    3、 设置webpack.dev.config.js

    //...
    plugins:[
        new HTMLPlugin({
            template: './src/template.html',
            filename: 'index.html'
            vendor: '/dll/' + manifest.name + '.js/' //manifest就是dll生成的json
        })
    ]

    仅仅用于开发环境

    回复
    0
  • 取消回复