vite编译html-docx.js提示With statements cannot be used with the “esm“ output format due to strict mode
    		       		warning:
    		            这篇文章距离上次修改已过442天,其中的内容可能已经有所变动。
    		        
        		                
                报错解释:
这个错误是由于在使用 Vite 打包工具时,尝试使用了不兼容 ES Module(ESM)输出格式的代码。具体来说,html-docx.js 模块中可能使用了不被推荐使用的 with 语句,而 Vite 默认配置输出为 ES Module 格式,这与 with 语句的使用方式不兼容。
解决方法:
- 查看 
html-docx.js的源码,看是否有使用with语句,如果有,考虑替换为其他逻辑,如const声明。 - 如果你不能修改 
html-docx.js源码,可以尝试将其引入到一个不使用with语句的文件中,然后再导出所需的功能。 - 如果你需要在项目中继续使用带有 
with语句的代码,可以修改 Vite 配置文件(通常是vite.config.js或vite.config.ts),将输出格式改为 CommonJS,即设置build.lib的formats为cjs。 
示例配置:
export default {
  build: {
    lib: {
      formats: ['cjs']
    }
  }
};请注意,使用 CommonJS 格式会导致其他兼容性问题,因此首选方法是替换掉 with 语句。
评论已关闭