在 Dart 中分离级联

Separating a Cascade in Dart

我在 Dart 中看到一些奇怪的行为。我的目标是仅在存在 build/web 目录时提供静态资产。

1- 以下作品:

Cascade cc;
if(new Directory(buildPath).existsSync() )
{
  cc = new Cascade().add(apiHandler).add(fHandler);
} else {
  cc = new Cascade().add(apiHandler);
}

2- 以下不起作用:

  Cascade cc = new Cascade().add(apiHandler);
  if( new Directory(buildPath).existsSync() )
  {
    cc.add(fHandler);
  }

问题: 场景1中的例子运行良好。在第二个示例中,当我添加 fHandler 时,它的关联路由中的 none 怎么会得到处理?

Cascade class 是不可变的,因此添加方法 returns 一个新实例。您的第二个代码块假设当前实例已修改

您需要添加抄送 =

cc = cc.add(..)