Size: a a a

2020 December 01

AN

Anton Nemtsev in Frontend UA
И unknown | any его не устраивает.
Это что же … описывать все промежуточные типы?
Что это за бред?!
const reviewsSchema = R.compose<unknown, unknown, unknown, unknown>(
     R.map(buildReviewList),
     R.filter(filterReviewsWithoutAuthor),
     R.pluck("node"),
     reviews
   );
источник

AR

Alexey Raspopov in Frontend UA
а compose прям требует описание типа? само не выведет?
источник

AZ

Andrei Zhidkov in Frontend UA
Anton Nemtsev
И unknown | any его не устраивает.
Это что же … описывать все промежуточные типы?
Что это за бред?!
const reviewsSchema = R.compose<unknown, unknown, unknown, unknown>(
     R.map(buildReviewList),
     R.filter(filterReviewsWithoutAuthor),
     R.pluck("node"),
     reviews
   );
Я не эксперт в рамде, но, на первый взгляд, это не похоже на проблему с компоузом.
Какой тип будет у функции, если убрать вызов и каст вот тут?
источник

AZ

Andrei Zhidkov in Frontend UA
Ошибка про Type 'ReviewSchema[]' is missing the following properties from type 'LocalBusinessSchema’ намекает, ты пытаешься передать массив в функцию, которая ожидает объект
источник

AN

Anton Nemtsev in Frontend UA
Alexey Raspopov
а compose прям требует описание типа? само не выведет?
Похоже на то. Точнее оно хочет промежуточные типы, а ’as’ можно пропустить
источник

AN

Anton Nemtsev in Frontend UA
Andrei Zhidkov
Ошибка про Type 'ReviewSchema[]' is missing the following properties from type 'LocalBusinessSchema’ намекает, ты пытаешься передать массив в функцию, которая ожидает объект
Можно поподробнее? Все функции которые написаны мной описаны выше. Функционально всё работает как должно. Сыпется именно проверка типов.
источник

AN

Anton Nemtsev in Frontend UA
Andrei Zhidkov
Я не эксперт в рамде, но, на первый взгляд, это не похоже на проблему с компоузом.
Какой тип будет у функции, если убрать вызов и каст вот тут?
У какой именно функции? Я немного запутался
источник

AZ

Andrei Zhidkov in Frontend UA
Anton Nemtsev
У какой именно функции? Я немного запутался
У той, которую вернет R.compose().
источник

AZ

Andrei Zhidkov in Frontend UA
Хочется понять, какой тип оно само выводит
источник

AZ

Andrei Zhidkov in Frontend UA
Судя по сигнатуре compose, оно само должно справлятся с инфером (с учетом того, что функции, которые ты композишь, типизированы)
источник

AN

Anton Nemtsev in Frontend UA
Andrei Zhidkov
У той, которую вернет R.compose().
С типом я правда немного ошибся —  as ReviewSchema[];
источник

AN

Anton Nemtsev in Frontend UA
Но без промежуточных всё равно получаю ошибки:

https://gist.github.com/SilentImp/7bb59898b932b10e34d289bde8f56474
источник

OC

Ostap Chervak in Frontend UA
а можеш пл3, створити csb.new з кодом і рамбдою?
источник

AN

Anton Nemtsev in Frontend UA
Попробую.
В прошлы раз оно почему то у нас не запускалось же вообще?
источник

AZ

Andrei Zhidkov in Frontend UA
Попробуй убрать  as ReviewSchema[];
источник

AZ

Andrei Zhidkov in Frontend UA
У тебя compose() возвращает функцию, а ты ее кастишь в ReviewSchema[]
источник

AN

Anton Nemtsev in Frontend UA
Andrei Zhidkov
У тебя compose() возвращает функцию, а ты ее кастишь в ReviewSchema[]
https://gist.github.com/SilentImp/fda93af9e7e905d9f4fffb0f213ee01b
Всё равно падает.
Но одна ошибка вместо двух.
источник

AZ

Andrei Zhidkov in Frontend UA
Теперь похоже, что ты передаешь reviews в компоуз
источник

AZ

Andrei Zhidkov in Frontend UA
компоуз принимает пачку функций и возвращает функцию, в которую уже потом надо передавать массив (наверное)
источник

AN

Anton Nemtsev in Frontend UA
Aх вот оно что! Секундочку
источник