Typescript返回值类型

时间:2017-05-24 13:58:59

标签: typescript

好奇为什么我会收到这样的错误:

  

类型'(Float64Array | [number,Friends] [])[]'不能分配给   输入'[[number,Friends] [],Float64Array]'。物业'0'缺失   在类型'(Float64Array | [number,Friends] [])[]'。

相关代码:

@date_of_birth = array[0].to_datetime
@date_of_death = array[1].to_datetime

我可以强制使用类型转换,但这是正确的行为吗?我正在使用最新版本的打字稿。

编辑: 这是类型:

 export let process_data = ([connections,target]) : [[user_id, Friends][], Matrix_float64] =>   
         compose(         
            (list : [user_id, Friends][]) => 
                 [list,construct_matrix(list)]; 
            , .....  

let construct_matrix = (list : [user_id, Friends][]) :  Matrix_float64 => {
...

以下是变量export interface Friends { count:number, overall:number, items:number[] }; export type user_id = number; 中包含的数据示例:

list

当我这样做[ [ 136444868, { count: 304, overall: 304, items: [Object] } ], [ 5686439, { count: 4, overall: 510, items: [Object] } ], [ 5501650, { count: 8, overall: 360, items: [Object] } ], [ 5440602, { count: 5, overall: 344, items: [Object] } ], [ 5366101, { count: 0, overall: 29, items: [] } ],.... 时(重复与函数定义中相同的返回类型)错误消失了,一切都很好。那么编译器没有查看我的定义?

0 个答案:

没有答案