Публикации по теме 'flowtype'


Adopting Reason: стратегии, двойные источники истины и почему genType так важен
Прочтите полную и обновленную историю по адресу https://www.javierchavarri.com/adopting-reason-strategies-dual-sources-of-truth-and-why-gentype-is-a-big-deal/ .

Точные типы объектов по умолчанию, по умолчанию
Мы объявили 5 лет назад о плане в конечном итоге сделать точные типы объектов по умолчанию . Сейчас мы работаем по этому плану. Начиная с Flow 0.200, вы должны явно установить либо exact_by_default=true , либо exact_by_default=false в разделе [options] вашего .flowconfig , поскольку мы исключили значение по умолчанию (которое было false ). Из потока 0.202 снова будет добавлено значение по умолчанию, на этот раз как exact_by_default=true . В будущих версиях мы предпримем..

Полугруппы
Адаптировано из Алгебраической структуры и протоколов автора @mbrandonw Математики любят изучать объекты абстрактно. Когда объект представляет собой набор элементов, который снабжен некоторыми операциями (и некоторыми законами!), Мы называем это алгеброй . В этом посте мы увидим, как алгебры могут быть закодированы как интерфейсы, а затем представлены некоторые важные алгебры. Начнем с простейшей алгебры, о которой мы только можем подумать: магмы. магма - это пара (M, *) , в..

Принудительное использование разрешенных свойств/ключей объекта с типом потока, определенным объектом перечисления
Вы когда-нибудь задумывались, как заставить такую ​​вещь работать правильно? Я тоже. Итак, вот как это сделать без какой-либо неизвестности утилиты $ObjMap‹T, F›. Похоже, что это должно работать, но это не так. В наших основных предположениях есть несколько ошибок. Вкратце: используйте утилиту Object.freeze() и $Exact<T> типа потока. 1. Тип не точный Определение типа объекта в Flow по умолчанию неточное. Создание вашего типа объекта $Exact<T> заставит..

Советы и хитрости, часть 4: Тип против интерфейса
Проблема Многие разработчики JS, которые на самом деле используют Flow, имеют некоторый фон TypeScript, и я считаю, что некоторые из них запутались с ключевыми словами interface и type в начале. Оба этих ключевых слова действительны как в мирах Flow, так и в Typescript. Допустим, у нас есть: /* @flow */ type SerializableObj = { serialize(): string }; interface Serializable { serialize(): string; }; Эти заявления кажутся одним и тем же. В простых случаях одно может..

Ненулевые значения в Flow
Flow поставляется с типом под названием Maybe , который позволяет вам указать, что тип значения - T | null | undefined , что очень полезно для инициализации или дополнительных свойств или аргументов. Синтаксис довольно прост, вам просто нужно добавить ? перед типом значения следующим образом: function foo(bar: ?number): ?number { if (bar != null) { return bar * bar } return bar } Как вы можете видеть в теле функции, нам нужно выполнить уточнение (проверить, не является ли..

Вопросы по теме 'flowtype'

Как объявить корневой экспорт модуля в объявлении интерфейса Flow?
Как объявить модуль module.exports в файле объявления интерфейса Flowtype? Скажем, например, я использую Express: import express from 'express'; const app = express();
2761 просмотров
schedule 02.05.2024

Функция высшего порядка, аннотации типа потока
Я пытаюсь написать несколько очень простых функциональных примеров для оценки системы типов Flow. Я пропустил что-то очевидное, или этот образец должен работать: function logger (message: string): void { console.log(message); } function...
1398 просмотров
schedule 03.11.2022

Flowtype Не охватывается потоком в цепочках свойств объекта
Я пытаюсь использовать Flow, но постоянно получаю предупреждение «Не охвачено Flow», поэтому мой код в основном подчеркнут. Я проверил документацию по Flow, но она не помогла в отношении цепочки свойств объектов, так что как заставить что-то...
3320 просмотров
schedule 29.06.2022

сигнатуры функций проверки типов с меньшим или большим количеством аргументов
Речь идет о заявлениях о проверке типов Flow, когда тип функции определен, а выражение функции, которое мы пытаемся проверить, имеет: (а) больше или (б) меньше аргументов, чем определенный тип. Следующие typechecks как надо, тут вопросов нет....
106 просмотров
schedule 04.08.2022

Точное определение типа объекта и деструктуризация
Я определяю тип State с точной формой: type State = {| someString: string, someNumber: number |}; Мое начальное состояние удовлетворяет этому определению: const initialState : State = { someString: 'hey', someNumber: 1, };...
400 просмотров
schedule 19.09.2022

Введите определенные идентификаторы с помощью FlowType
Я хотел бы определить карту сущностей таким образом, чтобы ключи всегда были идентификаторами какого-либо другого объекта указанного типа. Желаемое использование будет примерно таким: export type Id<T> = { id: string }; export type Foo =...
92 просмотров
schedule 18.03.2024

Как помочь потоку обрабатывать инициализатор состояния реагирующего компонента?
У меня есть такая инициализация в моих компонентах React: export default class LoginForm extends Component { state = { // (*) flash: { message: null, style: null } // initialiser for flash message:...
571 просмотров
schedule 24.04.2024

Вызов `this.setState()` прерывает проверку типа потока на реквизите в componentWillReceiveProps.
Я получаю ошибку потока в реквизите, который, как я знаю, является строкой, когда я вызываю this.setState() прямо перед ним. Если я передвину вызов setState() после строки, в которой используется реквизит, ошибка исчезнет. Ошибка, которую я...
2110 просмотров
schedule 18.11.2023

неизменный поток терпит неудачу. живой тест на Трэвисе
Здравствуйте, у этого вопроса есть минимальный рабочий пример того, что я пытаюсь построить. У меня проблемы с запуском проверки типа потока на простом файле JS. Вот как выглядит файл // @flow import type { Map } from 'immutable'; И я...
87 просмотров
schedule 16.10.2023

ESLint сообщает об ошибке no-undef для глобальных типов потокового типа
У меня есть глобальные типы, определенные в /flow-typed/redux.flow.js : declare type Action = {| +type: string, +payload: any, |} declare type State = {| +ui: UI, +user: User, +team: Team, +projects: Project[], +profile: Profile,...
3540 просмотров

Определить тип потока, исключающий определенный тип
Я хотел бы иметь общую функцию, которая принимает параметр типа (() => T) | T , например const myGenericFunction = <T>(param: ((() => T) | T)): T => { if (typeof param === 'function') { return param(); } return param; };...
267 просмотров
schedule 08.09.2022

тип потока для массива элементов option из реакции
У меня есть функция, которая возвращает массив элементов реакции <option> : function mapOptionToValues( element: any, valueKey: ?string, optionKey: ?string ): React$Element<*> { if (!valueKey && !optionKey) {...
360 просмотров
schedule 24.10.2022

Разделение проекта webpack es6 React на пакеты npm
Я прошу здесь поделиться лучшими практиками. Кто-нибудь успешно разделил проект реактивного веб-приложения на частные пакеты функций npm? У меня большая кодовая база, которую становится сложно разрабатывать, и было бы хорошо разбить ее на...
583 просмотров
schedule 22.08.2022

Тип потока для функции, возвращающей функцию
Из документации типа функции потока функция, возвращающая primitive type , похожа на это const a = aFunc = (id: number): number => id + 1 . Но как создать тип потока для функции, возвращающей функцию? const aFunc = (id: number):...
3251 просмотров
schedule 10.10.2022

Потоковое объединение типов функций
Я работаю над добавлением типов потока в кодовую базу JS и столкнулся с таким нетипизированным кодом: const doSomething = (callback, type) => { if (type === 'one') { const bool = callback(42) } else if (type === 'two') {...
301 просмотров
schedule 25.09.2022

Как вы обрабатываете нормализованные объекты в Typed JS (Typescript/FlowType)?
Работа над проектом. Я начинаю с потокового типа, потому что его легче реализовать поэтапно, но в конечном итоге я планирую перейти от потокового к Typescript, когда мы перейдем от «доказательства концепции» к «прототипу». Однако решение этой...
481 просмотров

Универсальный тип потока javascript Невозможно ссылаться на тип `CustomType` [1] из позиции значения.
Я пытаюсь вызвать асинхронную функцию и указать пользовательский тип (назовем его «CustomType»). Я указал несколько случайных свойств в этом типе, просто чтобы понять, что это то, что происходит из базы данных (содержимое может варьироваться в...
6798 просмотров
schedule 29.11.2023

Определения типов потока response-redux для ownProps, mapStateToProps и mapDispatchToProps
Я новичок в использовании потока, поэтому могу делать очень глупые ошибки. Я хочу создать тип потока Props, который пересекает реквизиты, переданные компоненту, реквизиты, полученные из хранилища redux, возвращенные из mapStateToProps, и некоторые...
1690 просмотров
schedule 17.12.2023

Понимание потока Тип, основанный на другом типе
Я просматривал документацию потока ( ЗДЕСЬ ) и наткнулся на следующие строки кода: function identity<T>(value: T): T { return value; } Приведенный выше код используется для иллюстрации примера типа, основанного на другом типе ....
43 просмотров
schedule 02.07.2022

Лучший способ поддерживать легкие обертки при ограничении реагирующих компонентов в дочерних элементах с потоком
У нас есть компонент списка, который ограничивает своих дочерних элементов элементами списка. Это отлично работает, но мы сталкиваемся с проблемой, когда нам нужно обернуть дочерний элемент, чтобы добавить состояние или что-то подобное. В этом...
27 просмотров
schedule 05.11.2023