Typescript: ввод только аргументов или возвращаемого типа функции

Создайте форму, используйте метод POST, отправьте форму - нет необходимости в iframe. Когда страница сервера ответит на запрос, напишите заголовок ответа для типа mime файла, и он представит диалог загрузки - я сделал это несколько раз.

Вы хотите, чтобы контент- тип приложения / загрузка - просто найдите, как обеспечить загрузку для любого языка, который вы используете.

3
задан clovis1122 22 February 2019 в 15:39
поделиться

2 ответа

Не уверен, является ли это единственной опцией, но одной из опций является использование вспомогательной функции, у которой есть универсальный параметр, который будет захватывать фактический тип передаваемой функции, но который также будет обеспечивать возвращаемый тип (c: number)=> number.

function fn<T extends (...a: any[]) => (c: number) => number>(o: T) {
  return o;
}
const createSum5 = fn(() => c => c + 5)
const createMultiplyN = fn((n: number) => c => n * c);
const createWordsSum = fn((word: string) => c => word.length + c);

Я не верю, что существует другая опция, так как машинопись не допускает частичного вывода для переменных (или, более конкретно, ограниченного вывода), это можно сделать только с помощью функции.

0
ответ дан Titian Cernicova-Dragomir 22 February 2019 в 15:39
поделиться

TypeScript поддерживает ключевое слово infer, которое позволит вам сохранить типы аргументов и / или типы возвращаемых функций.

Для условных типов это выглядело бы так:

type ReturnType<T> = T extends (...args: any[]) => infer R ? R : any;

. Здесь есть некоторая информация об умении: https://www.typescriptlang.org/docs/handbook/ release-notes / typescript-2-8.html

Обновление:

Вы можете сделать это, просто воспользовавшись универсальной функцией:

[111 ]
0
ответ дан Yakov Fain 22 February 2019 в 15:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: