java – 在Dart中,有没有办法拦截对编程结构的访问和变异?

例如,用于Java的Spring AOP框架提供了拦截某些进程的拦截器的功能,例如,当执行方法时 – Spring AOP可以劫持执行方法,并在方法执行之前或之后添加额外的功能.

我想知道Dart中是否有类似的东西.例如,您可以在Dart中拦截对变量的访问和变异吗?我无法在Dart文档中找到这些内容.

谢谢

解决方法:

你现在不能在运行时这样做.一旦镜像构建器着陆,你也许可以做这样的事情.从Reflection in Dart with Mirrors: An Introduction

We’d like to support more powerful reflective features in the future. These would include mirror builders, designed to allow programs to extend and modify themselves, and a mirror-based debugging API as well.

但是,您可以在预处理器(如build.dart)或pub transformer中在内置时执行此操作.如果需要,还可以使用analyzer package获取AST.这可以看作是Java中的APT.

上一篇:拦截器配置(下)


下一篇:如何在HandlerInterceptorAdapter中使用@ResponseBody记录Spring 3控制器的JSON响应?