相关疑难解决方法(0)

打字稿 - 变量声明

我不确定这是否是这个问题的地方,但我被告知代码审查不适合它.

我刚学习Angular 2和Typescript,所以我正在学习以下教程:

https://angular.io/docs/ts/latest/tutorial/toh-pt4.html

在第三部分和第四部分之间,heroes变量的声明app.component.ts来自:

export class AppComponent {
    heroes = HEROES;
}
Run Code Online (Sandbox Code Playgroud)

至:

export class AppComponent {
    heroes: Hero[];
}
Run Code Online (Sandbox Code Playgroud)

我理解第一个将它设置为英雄数组的常量,但为什么第二个使用冒号而不只是将它设置为空数组?

将第二个更改为=实际会抛出表达式预期错误,所以基本上我只是想了解两者之间的差异.

typescript angular

5
推荐指数
1
解决办法
5427
查看次数

这是类型注释,对象还是其他什么?

我正在看这个代码示例,并偶然发现了这种语法:

import React, { Component } from 'react';

const PrivateRoute = ({component:Component, ...rest}) => (
//(...)
  <Component {...props} />
// (...)
);
Run Code Online (Sandbox Code Playgroud)

我对这:Component部分感到困惑.这看起来像一个静态类型的注释,其行为类似于泛型,但这是Javascript所以它只能是一个对象,对吧?如果这是一个对象,这是否意味着该函数将默认的空Component对象分配给它自己的参数?如果是这样,它如何能够从调用者接收它,例如(根据示例):

<PrivateRoute path="/protected" component={Protected} />
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

2
推荐指数
1
解决办法
47
查看次数

标签 统计

angular ×1

javascript ×1

reactjs ×1

typescript ×1