Angular 2 - 自定义注释

时间:2016-09-28 14:20:55

标签: angular

是否可以在Angular 2中创建自定义注释?例如注释@LoginRequired,其中它毕竟检查用户是否记录,如果是,则继续使用该组件。如果用户未登录,则导航到页面错误。

1 个答案:

答案 0 :(得分:7)

装饰器或你称之为注释不是Angular 2本身的一部分,而是TypeScript语言的一部分。

Typescript documentation介绍了如何编写这些装饰器来装饰类,方法等。

您可以将装饰器定义为:

export function f() {
    //do something
}

后来用它作为:

import { f } from "./your-decorator-module";

@f()
export class MyClass { }

但是,您描述的功能(如果用户未登录则转到错误页面)可以通过为组件定义路由器保护来更好地实现。您可以按照Angular 2 Tutorial on Routing来完成此结果