使用 webpack 打包 TS 代码(中)


解决上面遗留的问题


问题一:每次编译完成都得重新在 HTML 中引入一次。

解决方案:
  • 使用插件 html-webpack-plugin

    • 在终端输入 npm i -D html-webpack-plugin 下载需要使用的插件。

    • 对 webpack 进行配置

      // webpackconfig.js
      const HtmlWebpackPlugin = require('html-webpack-plugin');
      
      module.exports = {
        ...
        plugins: [
          new HtmlWebpackPlugin()
        ]
      }
      
    • 这样每次打包的时候就会自动生成一个 HTML 文件,并将编译出来的 js 文件引入到 HTML 中。

  • 对于 webpack 自动生成的 HTML 文件可以自定义里面的内容。

    // webpackconfig.js
    const HtmlWebpackPlugin = require('html-webpack-plugin');
    
    module.exports = {
      ...
      plugins: [
        new HtmlWebpackPlugin({
          "title": "这是一个自定义的标题。"
        })
      ]
    }
    
  • 对于 webpack 自动生成的 HTML 文件也可以自定义想要的模板。

    // webpackconfig.js
    const HtmlWebpackPlugin = require('html-webpack-plugin');
    
    module.exports = {
      ...
      plugins: [
        new HtmlWebpackPlugin({
          "template": "./src/index.html"	// 模板文件路径
        })
      ]
    }
    

问题二:每次编译都是新文件覆盖旧文件,但是希望它把原文件删除并且重新创建文件。

解决方案:
  • 使用插件 clean-webpack-plugin

    • 在终端输入 npm i -D clean-webpack-plugin 下载需要使用的插件。

    • 对 webpack 进行配置

      // webpackconfig.js
      const { CleanWebpackPlugin } = require('clean-webpack-plugin');
      
      module.exports = {
        ...
        plugins: [
          new CleanWebpackPlugin()
        ]
      }
      

问题三:webpack 不知道哪些文件可以作为模块引入,所以在引入 .ts 模块的时候会报错

解决方案
  • 配置 webpack.config.json 。

    resolve: {
      extensions: ['.ts','.js']
    }
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值