Что делает <> рядом с классом extends в JS?
В примере с facebooks flux-utils они делают что-то вроде этого:
import {ReduceStore} from 'flux/utils';
class CounterStore extends ReduceStore<number> {
getInitialState(): number {
return 0;
}
reduce(state: number, action: Object): number {
switch (action.type) {
case 'increment':
return state + 1;
case 'square':
return state * state;
default:
return state;
}
}
}
Может кто-нибудь сказать мне, что <number>
угловые скобки рядом с ReduceStore
делает в JS?
Я пытался найти это, но не знаю, как называется эта функция es6...
Спасибо всем, кто помогает!
1 ответ
Решение
Это не функция ES6, это часть Flow, статическая проверка типов для вашего кода ES6. Это похоже на TypeScript в том смысле, что он добавляет новый синтаксис, хотя они имеют свои существенные различия (TypeScript - полноценный язык). Flow использует Babel для переноса ваших типовых аннотаций на чистый ES6.