Публикации по теме 'typescript-generics'
Что нужно знать о разнице между TypeScript и JavaScript
Вы ищете опытную команду разработчиков JavaScript, которые смогут воплотить идею вашего приложения в реальность? Как разработчик, если у вас когда-либо была возможность поработать над проектом веб-разработки, вы должны были понимать, как работает JavaScript. JavaScript присутствует на рынке уже много лет и стал популярным языком сценариев в сообществе разработчиков.
Но, как мы знаем, если технология или язык набирает обороты, всегда есть альтернативный вариант: выйти на рынок и дать..
Типы TypeScript: часть 1
TypeScript представляет в JavaScript надежную систему статических типов, позволяющую разработчикам определять типы переменных, параметров и возвращаемых значений. Эти аннотации типов помогают выявить ошибки, связанные с типами, во время разработки и обеспечить лучшую поддержку инструментов. Вот некоторые распространенные типы TypeScript и аннотации типов:
Основные типы
TypeScript поддерживает числовые, строковые, логические значения, пустоту, ноль, неопределенное значение и любые..
Наставник: «TypeScript — это вирус!»
Кайл Симпсон широко известен как один из самых известных, уважаемых и уважаемых инженеров в отрасли. Его книги по JavaScript приобрели большое количество поклонников, и многие из нас, в том числе и я, владеют ими и читали их.
Недавно я наткнулся на пост , в котором он делится своим мнением о текущем состоянии TypeScript. В своих работах он предполагает, что TypeScript быстро завоевывает господствующее положение в кодовых базах, даже несмотря на то, что выражает озабоченность по..
Вопросы по теме 'typescript-generics'
Можно ли указать несколько ограничений типа для Generics TypeScript
У меня есть общий интерфейс, подобный этому примеру, с ограничением одного типа:
export interface IExample<T extends MyClass> {
getById(id: number): T;
}
Можно ли указать несколько ограничений типа вместо одного?
43419 просмотров
schedule
30.09.2022
Общий интерфейс машинописного текста
Я видел несколько примеров, которые заставляют меня думать, что это может работать, но я не могу заставить работать следующее. Далее общий C представляет тип класса, а общий I представляет тип интерфейса. Однако return new SomeClass() жалуется...
194 просмотров
schedule
13.11.2022
Расширить класс Typescript из интерфейса
Как расширить класс свойствами интерфейса в Typescript? Я понимаю, что это обязательно оставит свойства неинициализированными.
Моя единственная цель — уменьшить избыточность кода. Объявления свойств, которые появляются в интерфейсе, будут...
92 просмотров
schedule
24.09.2022
TypeScript Generics: 'тип не может быть назначен типу T'
Я создал фабрику, которая будет создавать экземпляры определенных классов. Я хочу использовать дженерики, чтобы гарантировать, что все возвращаемые объекты принадлежат подклассам, которые расширяют абстрактные классы.
Я подумал, что логику метода...
13240 просмотров
schedule
13.03.2022
Typescript Общая ошибка типа
У меня есть служебная функция, которая проверяет уровень типа при вставке хранилища в реагирующий компонент.
import { Omit } from 'typelevel-ts';
import * as React from 'react';
declare module 'mobx-react' {
export function inject<D>(...
162 просмотров
schedule
07.01.2024
Ошибка приведения универсального типа Typescript
У меня есть служебная функция, которая помогает вводить проверки введенных хранилищ в реагирующем компоненте.
import { Diff } from 'typelevel-ts';
import * as React from 'react';
export type TypedInject<Stores> = <StoreKeyToInject...
76 просмотров
schedule
05.12.2022
TypeScript defaultIfUndefined типизация функции
Я пытаюсь написать простую функцию, которая возвращает defaultValue , если value === undefined .
Функция очень проста:
const defaultIfUndefined = (value, defaultValue) => {
return value === undefined ? defaultValue : value;
}
Но...
39 просмотров
schedule
07.04.2022
Generics TypeScript с рекурсией, условными выражениями и соответствующими ключами
У меня есть следующий тип с двумя общими параметрами:
type Result<INPUT, SPEC> = ...
Конкретный тип Result зависит от различных комбинаций INPUT и SPEC .
Как это должно работать:
if(INPUT extends {[key: string]: any}) {...
39 просмотров
schedule
20.08.2023
Ввод функции с произвольным количеством различных аргументов
У меня есть функция под названием pipeline() В настоящее время она набрана так
function pipeline(firstFn: Function, ...fns: Function[]) {
let previousFn = firstFn()
for (const func of fns) {
previousFn = func(previousFn)
}
return...
65 просмотров
schedule
02.11.2022
Typescript: как я могу делать записи на карте ES6 на основе типа ключа / значения объекта
Я хотел бы использовать карту вместо карты объектов для объявления некоторых ключей и значений. Но Typescript, похоже, не поддерживает типы индекса для карты ES6, это правильно и есть ли обходные пути?
Кроме того, я хотел бы сделать значения...
1965 просмотров
schedule
14.11.2022
как ввести ссылку на функцию в машинописном тексте
Учитывая следующую функцию getCards - Как мне объявить тип для ввода memoize ? Он принимает ссылку на функцию.
import memoize from "fast-memoize";
function getCards<T>(
filterBy: string,
CardsList: T[] = CardsJSON.map((item, i)...
142 просмотров
schedule
04.05.2023
Как ограничить тип параметра, к которому может применяться данный декоратор параметра
В настоящее время существует способ ограничить тип свойства, к которому может применяться данный декоратор свойства. Например.
type PropertyDecorator<TPropType = unknown> = (
<
TPropName extends string | symbol,...
100 просмотров
schedule
12.09.2022
Элегантно объедините два типа в интерфейс в Typescript
Некоторая предыстория / мотивация для моего варианта использования
У меня есть строка enum E и interface I с одинаковыми наборами ключей. Я хочу создать новый сопоставленный тип. Для каждого общего ключа k он должен использовать значение...
4653 просмотров
schedule
08.02.2023
Получить тип параметра из универсального на TypeScript
Предположим, у меня есть следующий фрагмент кода:
interface Generic <S, T> {
_?: [S, T];
id: string;
...
}
interface A {}
interface B {}
interface C {}
interface D {}
type t1 = Generic<A, B>;
type t2 = Generic<B,...
712 просмотров
schedule
01.09.2022
Ограничить значения объекта скалярами
Я использую Formik, в котором есть этот тип:
type FormikErrors<Values> = {
[K in keyof Values]?: Values[K] extends object
? FormikErrors<Values[K]>
: string
};
Затем есть функция проверки, которая в основном выглядит как...
266 просмотров
schedule
23.08.2022
Тип условного сопоставления Typescript с несколькими условиями
Я работаю с нормализованными данными внутри хранилища избыточности (все сложные типы - это просто идентификаторы, относящиеся к реальному объекту), и я хотел бы создать денормализованные типы, используя функцию условных сопоставленных типов...
1495 просмотров
schedule
25.12.2022
Общее ограничение для переменных нескольких типов
Пишу типы для существующей библиотеки. Я столкнулся с проблемой определения ограничения для типа, когда два типа переменных должны удовлетворять некоторому ограничению (T1 [T2] должен быть массивом определенного типа).
У меня 1-й интерфейс...
56 просмотров
schedule
11.09.2022
Условный тип второго аргумента функции
У меня есть следующая функция:
function doSomething(param1: string, param2: string) {
return param1 + param2;
}
также у меня есть тип на основе json со структурой, похожей на эту:
a1: {
b1: 'something1',
b2: 'something2',
b3:...
48 просмотров
schedule
28.07.2022
Как создать универсальный фабричный метод для доступа к статическим членам типа класса, который он создает
Я использую Typescript для записи конечных точек REST API в качестве функций через Firebase, и все методы следуют аналогичному шаблону: проверьте request.body, извлеките соответствующие данные из этих данных тела, поместите их в строго типизированный...
271 просмотров
schedule
03.01.2023
TypeScript и Sequelize: передать общую модель
у меня есть этот код
import { Model, DataTypes, Sequelize } from "sequelize";
class User extends Model {
public id!: number;
public firstName!: string;
public readonly createdAt!: Date;
public readonly updatedAt!: Date;
}...
2004 просмотров
schedule
30.03.2024