(Angular 12) 目标环境不支持动态 import() 语法,因此无法在脚本中使用外部类型“模块”

Two*_*ses 8 javascript typescript webpack angular

我有以下动态导入代码来在运行时导入 js 库:

export class AuthService {
    constructor() {
        import('https://apis.google.com/js/platform.js').then(result => {
            console.log(result)
        })
    }
}
Run Code Online (Sandbox Code Playgroud)

然而,当我尝试构建/服务 Angular 项目时,我得到:

外部“https://apis.google.com/js/platform.js” - 错误:目标环境不支持动态 import() 语法,因此无法在脚本中使用外部类型“模块” 您的意思是构建 EcmaScript 模块('output.module: true')?

此外,vs-code 还强调了import以下内容:
在此输入图像描述

我尝试添加"type": "module"inpackage.json"module": "ESNext"in tsconfig.json,但没有成功。

我怎样才能解决这个问题?

Ric*_*ado 2

动态导入仅自 ES2020 起有效。请检查您的 tsconfig.json 以了解您的目标版本。

  • 我尝试将目标更改为``ES2020``/```ES2021````/```ESNext```,仍然不起作用 (3认同)