@typescript_ru

Страница 533 из 669
Олег
10.03.2018
16:57:02
есть специальные операторы, например flatMap

Евгений
10.03.2018
16:57:34
т.е не делать вложенные ?

Олег
10.03.2018
16:59:33
не делать

Google
kana
10.03.2018
16:59:38
без контекста же не понятно вообще

есть специальные операторы, например flatMap
как ты ему отвечаешь, если не понятно про что он говорит вообще?

Олег
10.03.2018
17:00:24
про Rx говорит

Дмитрий
10.03.2018
17:00:42
Вполне понятно)

Вложенные subscribe лучше не делать

Евгений
10.03.2018
17:01:10
thx all

kana
10.03.2018
17:01:35
Вполне понятно)
мое первое предположение было про редаксовый субскрайб

Дмитрий
10.03.2018
17:02:28
Все subscribe передают в принципе одну и ту же идею)

Евгений
10.03.2018
17:02:50
Олег
10.03.2018
17:04:51
А почему?
это плохо

Roman
10.03.2018
17:15:36
Помогите понять синтаксис: export function raw(sql: string): () => string;

Эта функция возвращает String ?

Или Object ?

Google
Serabass
10.03.2018
17:16:58
Эта функция возвращает функцию, которая возвращает строку

Roman
10.03.2018
17:17:58
пасиб

Bogdan
10.03.2018
17:51:56
https://gist.github.com/dadayada/31f93113ad15eb8ff5101af7a2e82f65 когда я пытаюсь так же сделать с redux-act, падает с A computed property name must be of type 'string', 'number', 'symbol', or 'any'

@goodmind не подскажешь в чем дело?

Тимофей
10.03.2018
18:30:41
@goodmind не подскажешь в чем дело?
У тебя то что в [] имеет тип не тот.

Bogdan
10.03.2018
18:32:03
ну с помощью createAction создаю

Тимофей
10.03.2018
18:32:21
ну с помощью createAction создаю
Я знаю и он возвращает не string

Andrey
10.03.2018
19:13:34
Просто кто-то пару раз нарвался на геттер с сайдэффектом и теперь вопит что "геттеры не нужны совсем!"
если ты пишешь в стиле ООП, то сеттеры не нужны ибо это уже не ООП, а подобие хрен знает чего а если конкретно то лучше их переименовывать в более подходящие к задачи

John
10.03.2018
21:34:08
https://monosnap.com/file/vd6P2QF7lyURlxGN9yscPOTCetI2Cr [tslint] The key 'el' is not sorted alphabetically (object-literal-sort-keys)

двигаю router, выдает [tslint] shorthand properties should come first (object-shorthand-properties-first)

чяднт

Тимофей
10.03.2018
21:42:56
двигаю router, выдает [tslint] shorthand properties should come first (object-shorthand-properties-first)
Исправь правила, property по алфавиту мне кажется оч тупо

John
10.03.2018
21:50:10
Если переопределяю правило, перестает подсвечивать ошибки vscode

Тимофей
10.03.2018
21:50:39
John
10.03.2018
21:51:34
Значит не правильно переопределяешь
Консольный pretest при этом отрабатывает корректно

Другими словами, в консоле tslint работает и отлавливает ошибки

Тимофей
10.03.2018
21:53:24
John
10.03.2018
21:54:27
{ "defaultSeverity": "error", "extends": [ "tslint:recommended", "tslint-config-airbnb" ], "jsRules": {}, "rules": { "object-literal-sort-keys": false }, "rulesDirectory": [] }

Google
John
10.03.2018
21:58:16
Отож

Выключил, включил vscode заработало

Осталось понять почему d.ts не чекает

andretshurotshka?❄️кде
10.03.2018
22:40:14
Andrey
11.03.2018
00:46:12
Roman
11.03.2018
06:30:38
Парни, помогите понять такую запись: export interface ConnectionOptions { user?: string; ...

Это описание класса ConnectionOptions, в котором может быть поле user а может и небыть, так что-ли?

Или это вообще не класс, а какая-то другая структура данных

.
11.03.2018
07:14:01
Это описание класса ConnectionOptions, в котором может быть поле user а может и небыть, так что-ли?
Верно, только не класса, а интерфейса. https://ru.m.wikipedia.org/wiki/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_(%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)

Roman
11.03.2018
07:21:27
пасиб

Nikolay
11.03.2018
10:38:25
Привет. Такая задача, JSON API возвращает данные с кривыми названиями полей, я хочу у себя нормальные названия использовать, как это лучше сделать?

Может как-то можно задать кастомное имя переменной для компиляции?

Vadim 
11.03.2018
10:45:46
Как это с кривыми.

Nikolay
11.03.2018
10:58:43
Как это с кривыми.
i = id a = username h = status etc

Написать какой-нибудь адаптер
А каких-то нормальных способов нет? В .Net например можно атрибутами обмазать, примерно так: [JsonProperty("i")] public int Id { get; set; }

Nikolay
11.03.2018
11:03:34
А в ts не такого атрибута, которое задаёт имя свойства для замены при компиляции?

Ilshat
11.03.2018
11:03:49
Невидел

Andrey
11.03.2018
11:55:05
А в ts не такого атрибута, которое задаёт имя свойства для замены при компиляции?
предлагаю сделать мапинг, какого-то атрибута на нужный и если совсем по красивому сделать через декораторы типа описываешь класс с свойствами, к свойствам декораторы вешаешь передаешь объект в какой-то экстрактор который возвращает объект с человеко читаемыми именами свойств и данными

Google
Roman
11.03.2018
12:40:29
Помогите понять такую запись: export type TypeCast = boolean | ( (field: FieldInfo & { type: string, length: number, string(): string, buffer(): Buffer, geometry(): null | GeometryType}, next: () => void) => any); Что это такое?

Это тип данных, который может быть boolean, либо объектом, а что за объектом, не очень понятно

Le
11.03.2018
12:42:49
функция

с 2 аргументами

John
11.03.2018
12:43:21
+1

Andrey
11.03.2018
12:43:57
понапридумывают приумкуватые и читай потом

Le
11.03.2018
12:44:15
ну лень же эту функцию отдельной переменной сделать

и тот тип длинющий

надо всё в одном месте слепить

Roman
11.03.2018
12:44:55
Это описание функции? о.О

Le
11.03.2018
12:45:26
Это описание функции? о.О
откуда этот кусок хоть? передавай привет авторам

John
11.03.2018
12:45:29
Да

Roman
11.03.2018
12:45:57
Вот отсюда это, строка 221: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/mysql/index.d.ts

Le
11.03.2018
12:46:45
ну там всегда треш

в типах которые пишут отдельно от либ

Roman
11.03.2018
12:46:58
Можете написать, как выглядит эта функция на понятном человеку языке? Я просто плохо знаком с TS

Le
11.03.2018
12:48:10
Можете написать, как выглядит эта функция на понятном человеку языке? Я просто плохо знаком с TS
export type КакойТоСтранныйТип = { type: string, length: number, string(): string, buffer(): Buffer, geometry(): null | GeometryType}; export type Fn = (field: FieldInfo & КакойТоСтранныйТип, next: () => void) => any; export type TypeCast = boolean | Fn;

Roman
11.03.2018
12:48:12
Мне это определение TypeCast нужно перевести на другой язык

Le
11.03.2018
12:48:30
скопируй в редактор, тут не видно ничего

Friedrich
11.03.2018
12:50:29
Можете написать, как выглядит эта функция на понятном человеку языке? Я просто плохо знаком с TS
Тайпкаст — либо boolean, либо функция от двух аргументов. Первый аргумент имеет тип FieldInfo & { type: string, length: number, string(): string, buffer(): Buffer, geometry(): null | GeometryType} Второй аргумент имеет тип () => void, функция возвращает any. Теперь про этот тип первого аргумента: он включает в себя все свойства типа FieldInfo, а также дополнительно те свойства и методы, которые описаны в фигурных скобках.

Google
Roman
11.03.2018
12:51:19
Оу, спасибо большое

Friedrich
11.03.2018
12:51:41
Определение очень стрёмное, надо заметить.

Roman
11.03.2018
12:52:13
А вот это что такое, скажите пожалуйста string(): string

В доп. параметрах

Friedrich
11.03.2018
12:52:38
Это значит, что у типа есть метод с названием string, который возвращает тип string.

Первый стринг это тупо название метода.

Roman
11.03.2018
12:53:19
А, ясно, пасиб

John
11.03.2018
12:55:35
А такое будет работать type M<T> = {[<T>]: T}

?

Friedrich
11.03.2018
12:56:27
Сорян, я не понял, что тут написано :(

Le
11.03.2018
13:00:09
А такое будет работать type M<T> = {[<T>]: T}
можно было спросить об этом сам тайпскрипт, он это любезно подчеркивает красным

Friedrich
11.03.2018
13:00:37
Я так думаю, товарищ хочет какой-то хитрый женерик, но я пока не понял, какой конкретно.

andretshurotshka?❄️кде
11.03.2018
13:00:43
jsx

Le
11.03.2018
13:00:47
?

andretshurotshka?❄️кде
11.03.2018
13:00:50
на типах

Страница 533 из 669