【发布时间】:2021-11-27 12:59:16
【问题描述】:
我将 Angular 项目从 12 升级到 13,但出现错误 未捕获的语法错误:无法在模块外使用“import.meta”。我想在我的项目中同时使用 require 和 import 我尝试使用 "type"=module 但在 webpack.config.js 文件中出现错误
【问题讨论】:
-
你能解决这个问题吗?
我将 Angular 项目从 12 升级到 13,但出现错误 未捕获的语法错误:无法在模块外使用“import.meta”。我想在我的项目中同时使用 require 和 import 我尝试使用 "type"=module 但在 webpack.config.js 文件中出现错误
【问题讨论】:
问题可能与 webpack.config 将 publicPath 设置为“auto”有关。您可能必须设置相对路径。 解决此问题的其他选项是在 webpack.config 中将 scriptType 属性设置为“text/javascript”,如下所示:
module.exports = {
output: {
uniqueName: "MyProj",
publicPath: "auto",
scriptType: 'text/javascript'
}
此选项不会迁移微前端,它会恢复 Angular 12 的行为。
关于微前端升级的更详细的文章可以在这里找到: https://github.com/angular-architects/module-federation-plugin/blob/main/migration-guide.md
【讨论】: