Отсутствует аннотация типа для `T`

#javascript #node.js #npm #flowtype

#javascript #node.js #npm #тип потока

Вопрос:

Я пытаюсь создать код с помощью простой функции javascript ниже:

 filterArray(user: any, items: Array<Object>) {
    items = items.filter(item => {return true;});
    return items;
}
 

Но я получаю сообщение об ошибке ниже:

 Missing type annotation for `T`. `T` is a type parameter declared in array type [1] and was implicitly instantiated at
call of method `filter` [2].

   src/mod/test.js:69:15
   69|       items = items.filter(item => {return true;});
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [2]

References:
   src/mod/test.js:69:15
   69|       items = items.filter(item => {return true;});
                     ^^^^^ [1]
 

Я использую flow и создаю с использованием npm.

Комментарии:

1. Я не могу воспроизвести эту ошибку . Качество вашего вопроса улучшилось бы, если бы вы включили flow.org/try ссылку, демонстрирующую вашу проблему

2. спасибо за ответ, я попробовал эту ссылку, но ошибка там не возникает.

Ответ №1:

Эта ошибка говорит о том, что ваша аннотация отсутствует. Добавить аннотацию возвращаемого типа в функцию

 function add(x: number, y: number): number {
return x   y;
 

}

Комментарии:

1. спасибо за ответ. Это сработало, ошибка не приходит сейчас. Но то, как вы узнали, что функция возвращает аннотацию типа, исправит ошибку. Из-за ошибки ‘Отсутствует аннотация типа для T .’ это не указывает на отсутствие аннотации возвращаемого типа функции. Из-за ошибки я подумал, что аннотация отсутствует в этой строке items = items.filter(item => {return true;});.