Вопросы по теме 'typeguards'
Машинопись Type Guards и функция жирной стрелки
Разве это не должно правильно компилироваться? Я получаю ошибку "Property 'hello' does not exist on type 'object'. "в выделенной строке.
Я могу без проблем получить доступ к g.hello вне функции жирной стрелки.
class Test {...
278 просмотров
schedule
28.11.2022
Typeguard для универсального типа объединения
Я создал тип объединения:
type RequestParameterType = number | string | boolean | Array<number>;
и у меня есть класс, который представляет собой пару ключ / значение, содержащую этот тип объединения:
class RequestParameter
{...
84 просмотров
schedule
04.05.2022
Предикаты типов в TypeScript
Это недостаток функции в TypeScript или что-то хорошо продуманное, что компилятор TS не может вывести (а затем сузить) тип аргумента, если логика условия заключена в отдельную функцию? Я имею в виду, что в этом случае компилятор TS выдает мне ошибку:...
970 просмотров
schedule
17.02.2023
Создание защиты типа для интерфейса со всеми необязательными свойствами
У меня есть функция makeMergedState , которая принимает либо объект, либо массив типа ICustomState .
Функции содержат условные операторы в зависимости от того, является ли вход допустимым ICustomState или ICustomState []. В случае, если ввод...
1740 просмотров
schedule
19.06.2022
Как добавить охранников расширений к условным типам? Или эквивалент
Скажем, у меня есть класс с универсальным параметром. У него есть условные типы для некоторых свойств класса. Эти условные типы зависят от универсального параметра, являющегося одним из двух возможных значений перечисления. В конструкторе я передаю...
193 просмотров
schedule
03.07.2022
Type Guard Typescript неправильно определяет параметры остальных функций
У меня есть пример Typescript с параметрами type guard и function rest:
interface BaseProps {
username: string;
password: string;
}
type Props = BaseProps & (
| {isAdmin: true, adminName: string}
| {isAdmin: false}
)
// Doesn't...
55 просмотров
schedule
05.11.2022
Как связать типы предикатов этих типов с типами их параметров?
Вот чего я хочу добиться:
function isString<T>( value: T ): value is T extends string ? T : string {
return typeof value === "string";
}
function isNotString<T>( value: T ): T extends string ? unknown : T {
return...
74 просмотров
schedule
23.07.2022
Почему в этом примере не работает защита типов машинописного текста?
Мой пример - это следующий код:
type SomeType = {
name: string,
age: number,
} | {
xy: [number, number]
}
function someFunction(arg: SomeType) {
if (arg.name && arg.age) {
// DO STH
} else if (arg.xy) {...
23 просмотров
schedule
28.07.2022