【发布时间】:2016-12-05 20:54:04
【问题描述】:
我对打字稿装饰器以及它们的解释方式有点困惑。假设他们通过将元数据与它相关联来“装饰”一个类。我似乎无法真正理解元数据如何与类的实例相关联的概念。以角度 2 为例。
@Component(
{
selector:...
}
)
export class foo { ... }
目前据我了解,angular 将实例化类 foo 并以某种方式将实例与装饰器的参数相关联,以便它可以提供服务、指令和模板。所有这些似乎也可以通过类继承来实现。如果我有一个 Component 类并让我的组件扩展该类,为什么不能 angular 然后在它以与 props 反应的方式引导时提供这些参数,并在此使用场景中完全摆脱装饰器。
class Component { ... } //say this has members such as selector, services, directives, etc..
class Foo extends Component { ... }
然后你会在引导/运行时用这个实例化它
new Foo(ElementName, Directives, Services, etc..)
使用 react 从技术上讲,这就是幕后发生的事情。您派生了组件并实现了它的方法。如果在实例化的时候需要传递信息,那么就传入 props 对象。
请赐教。
【问题讨论】:
标签: typescript angular decorator