You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

迁移至AngularDart 4.0.0失败,提示'Unsupported operation: Using the 'angular2' transformer is required'

解决AngularDart 4.0.0迁移后的"angular2 transformer"报错问题

这个问题是AngularDart 4.0.0版本升级后的核心配置变更导致的——官方彻底重构了包命名,把原有的angular2包和对应的构建transformer统一更名为angular,旧配置自然会触发这个不兼容错误。下面是具体的修复步骤:

1. 更新核心依赖包

首先修改pubspec.yaml中的主依赖,把旧的angular2替换为新的angular包:

dependencies:
  angular: ^4.0.0  # 替换原来的 angular2: ^3.1.0
  http: ^0.11.0
  # ...其他原有依赖保持不变

2. 替换Transformer配置

AngularDart 4.x不再支持angular2 transformer,必须改成angular,同时注意部分配置项的简化:

transformers:
  - angular:  # 将原来的angular2改为angular
      entry_points: web/main.dart
      resolved_identifiers:
        BrowserClient: 'package:http/browser_client.dart'
        Client: 'package:http/http.dart'
      # 注意:AngularDart 4.x已默认内置COMMON_DIRECTIVES和COMMON_PIPES,无需手动配置这两项,可以直接移除

3. 验证开发依赖(可选)

检查dev_dependencies中的dart_to_js_script_rewriter,这个包在4.x版本中依然兼容,若后续遇到构建问题,可以更新到最新兼容版本:

dev_dependencies:
  browser: ^0.10.0
  dart_to_js_script_rewriter: ^1.0.1  # 保持当前版本或更新至最新兼容版

4. 重新构建项目

执行以下命令清理旧缓存并更新依赖:

pub clean
pub get
pub build

错误原因说明

AngularDart 4.0.0是一次重大版本迭代,官方为了简化包命名体系,将所有angular2开头的包统一更名为angular,同时移除了旧的angular2构建transformer。你的旧配置还在引用已废弃的transformer,因此触发了"Unsupported operation"错误。

内容的提问来源于stack exchange,提问作者Zied Hamdi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:07:19