繁体   English   中英

为什么TypeScript的方法需要一个变量作为返回类型?

[英]why does TypeScript's method need a variable as return type?

我是打字稿新手,如果问题很愚蠢,请原谅我。

对于以下代码:

import { Component, ViewChild } from '@angular/core';
//....
export class MyApp {

  @ViewChild(Nav) nav: Nav;
//....

我知道Nav是返回类型,但是“ nav:Nav”是什么意思? 为什么返回类型需要“ nav”作为变量? 我试图查看正式文档,但没有找到线索(也许我吠叫到错误的树上)等同于:

import { Component, ViewChild } from '@angular/core';
//....
export class MyApp {

  @ViewChild(nav: Nav) Nav;
//....

实际上,这看起来像是Nav类型的称为nav的类的属性(不是方法),由ViewChild装饰。 放在一条线上会使我感到有些困惑。 可以更容易地看到它的这种方式:

import { Component, ViewChild } from '@angular/core';
//....
export class MyApp {

  @ViewChild(Nav)
  nav: Nav;
//....

您可以在此处阅读有关装饰器的信息 您可以装饰类,属性或方法,并且装饰器使用@decoratorName语法,就像它们在其他语言中一样。

编辑:

为了更清楚一点,在这种情况下, ViewChild是一个装饰器工厂ViewChild是一个返回装饰器的函数。 因此,您将此函数Nav作为参数(我想是Nav是一个类构造函数),它返回实际的装饰器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM