@typescript_ru

Страница 129 из 669
Nikita
06.12.2016
14:33:57
мб кому пригодится

Vladimir
06.12.2016
14:51:40
Да проще руками делать

Farrux
07.12.2016
08:45:45
всем привет, как можно дебажить typescript на webstrome? именно breakpoint

Google
Farrux
07.12.2016
10:16:38
?

Aleh
07.12.2016
10:18:13
в vscode через sourcemap, но как-то сложно там

брр https://www.typescriptlang.org/play/index.html#src=interface%20Parent%20%7B%0D%0A%20%20%20%20name%3A%20string%3B%0D%0A%7D%0D%0A%0D%0Ainterface%20Child%20extends%20Parent%20%7B%0D%0A%20%20%20%20somethingElse%3A%20number%3B%0D%0A%7D%0D%0A%0D%0Alet%20a%3A%20Map%3Cstring%2C%20(a%3A%20number)%20%3D%3E%20Parent%3E%20%3D%20new%20Map(%5B%0D%0A%20%20%20%20%5B%22asd%22%2C%20()%20%3D%3E%20(%7Bname%3A%20%22%22%7D)%5D%2C%0D%0A%20%20%20%20%5B%22abc%22%2C%20(a%3A%20number)%3A%20Child%20%3D%3E%20(%7Bname%3A%20%22%22%2C%20somethingElse%3A%20a%2B2%7D)%5D%2C%0D%0A%20%20%20%20%5B%22cde%22%2C%20()%20%3D%3E%20(%7Bname%3A%20%22%22%7D)%5D%0D%0A%5D)

какой-то поломанный резолв Iterable

Vladimir
07.12.2016
11:56:28
https://flowtype.org/try/#0PQKgBAAgZgNg9gdzCYAoVBLAdgFwKYBOUAhgMZ5gAKxBeuYA3qmC2FsQLZ4BcYAzjgLYA5gG5UAX3TZ8RMhQDCACwwwAJmDwAPfFjV8qNOjkbNWfOFxwqswgKIw+PNgFcOAI0LipqGHhPEvACyxAAOADwCQrYANGAAFIGuHoQAlGAAvAB8hrS4ORlseEghofEA2mYs5QBExHxqNXHx6dkJDOxcvDU1EqkAujFVYLXE7qRNCUlYbp4EqbzKqhpt8R2czj1xFlY29o7OxADUAEx9g8O1pGp4ky2ZOWudm70DqP2pQA

Aleh
07.12.2016
11:57:24
ну так и должно быть)

Vladimir
07.12.2016
11:57:42
Я знаю)

Но это похоже на баг, на самом деле

Aleh
07.12.2016
11:57:59
да, это какая-то ерунда с iterable

я примерно представляю почему

результат функции next берется как один из элементов массива

через или

ну благо у меня в коде это легко решилось явным указанием результата функции

Google
Aleh
07.12.2016
11:59:17
надо гх прочесать

Vladimir
07.12.2016
11:59:55
Смотри

https://www.typescriptlang.org/play/index.html#src=%0D%0Alet%20a%20%3D%20new%20Map(%5B%0D%0A%20%20%20%20%5B%22asd%22%2C%20()%20%3D%3E%20(%7B%7D)%5D%2C%0D%0A%20%20%20%20%5B%22abc%22%2C%20(a%3A%20number)%20%3D%3E%20(%7B%20name%3A%20''%7D)%5D%0D%0A%5D)

Так ошибка

https://www.typescriptlang.org/play/index.html#src=%0D%0Alet%20a%20%3D%20new%20Map(%5B%0D%0A%20%20%20%20%5B%22asd%22%2C%20(a%3A%20number)%20%3D%3E%20(%7B%7D)%5D%2C%0D%0A%20%20%20%20%5B%22abc%22%2C%20(a%3A%20number)%20%3D%3E%20(%7B%20name%3A%20''%7D)%5D%0D%0A%5D)

А так нет

Aleh
07.12.2016
12:01:10
дада

именно)

в моем примере если из функции 2 убрать параметр

то тоже заработает

Vladimir
07.12.2016
12:02:51
Проблема в том что не получается вывести тип тапла

Aleh
07.12.2016
12:03:44
просто проблема походу частично уже решалась

потому что если взять просто массив

то все ок

https://www.typescriptlang.org/play/index.html#src=interface%20Parent%20%7B%0D%0A%20%20%20%20name%3A%20string%3B%0D%0A%7D%0D%0A%0D%0Ainterface%20Child%20extends%20Parent%20%7B%0D%0A%20%20%20%20somethingElse%3A%20number%3B%0D%0A%7D%0D%0A%0D%0Alet%20a%3A%20Array%3C%5Bstring%2C%20(a%3A%20number)%20%3D%3E%20Parent%5D%3E%20%3D%20%5B%0D%0A%20%20%20%20%5B%22asd%22%2C%20()%20%3D%3E%20(%7Bname%3A%20%22%22%7D)%5D%2C%0D%0A%20%20%20%20%5B%22abc%22%2C%20(a%3A%20number)%3A%20Child%20%3D%3E%20(%7Bname%3A%20%22%22%2C%20somethingElse%3A%202%7D)%5D%2C%0D%0A%20%20%20%20%5B%22cde%22%2C%20()%20%3D%3E%20(%7Bname%3A%20%22%22%7D)%5D%0D%0A%5D

Vladimir
07.12.2016
12:04:58
Ну тут ты сам аннотацию указываешь

https://www.typescriptlang.org/play/index.html#src=%0D%0Afunction%20test%3Ca%2C%20b%3E(x%3A%20%5Ba%2C%20b%5D%2C%20y%3A%20%5Ba%2C%20b%5D)%20%7B%0D%0A%0D%0A%7D%0D%0A%0D%0Atest(%5B1%2C%20()%20%3D%3E%20(%7B%7D)%5D%2C%20%5B1%2C%20(a%3A%20number)%20%3D%3E%20(%7B%20a%3A%20''%20%7D)%5D)

Вот похожий пример

Исходя из ошибки, ТС считает что один из таплов должен быть подтим другого, хотя на самом деле это может быть и не так

Aleh
07.12.2016
12:07:46
https://www.typescriptlang.org/play/index.html#src=interface%20Parent%20%7B%0D%0A%20%20%20%20name%3A%20string%3B%0D%0A%7D%0D%0A%0D%0Ainterface%20Child%20extends%20Parent%20%7B%0D%0A%20%20%20%20somethingElse%3A%20number%3B%0D%0A%7D%0D%0A%0D%0Aclass%20T%3CA%2CB%3E%20%7B%0D%0A%20%20%20%20constructor(a%3A%20Array%3C%5BA%2C%20B%5D%3E)%20%7B%0D%0A%0D%0A%20%20%20%20%7D%0D%0A%7D%0D%0A%0D%0Alet%20a%3A%20T%3Cstring%2C%20(a%3A%20number)%20%3D%3E%20Parent%3E%20%3D%20new%20T(%5B%0D%0A%20%20%20%20%5B%22asd%22%2C%20()%20%3D%3E%20(%7B%20name%3A%20%22%22%20%7D)%5D%2C%0D%0A%20%20%20%20%5B%22abc%22%2C%20(a%3A%20number)%3A%20Child%20%3D%3E%20(%7B%20name%3A%20%22%22%2C%20somethingElse%3A%202%20%7D)%5D%2C%0D%0A%20%20%20%20%5B%22cde%22%2C%20()%20%3D%3E%20(%7B%20name%3A%20%22%22%20%7D)%5D%0D%0A%5D)%3B

Google
Aleh
07.12.2016
12:07:49
ну да

тут ошибка получше

Vladimir
07.12.2016
12:08:44
Хм, разницы то не должно особой быть

Скорее всего вывод для массивов оптимизирован

И ошибки переопрделены

А для других дженериков, в том числе iterable - нет

https://www.typescriptlang.org/play/index.html#src=%0D%0Aconst%20arr%20%3D%20%5B%0D%0A%20%20%20%20()%20%3D%3E%20(%7B%20%7D)%2C%0D%0A%20%20%20%20(a%3A%20number)%20%3D%3E%20(%7B%20a%3A%20''%20%7D)%0D%0A%5D%3B%0D%0A%0D%0A%0D%0Anew%20Generic(%0D%0A%20%20%20%20()%20%3D%3E%20(%7B%20%7D)%2C%0D%0A%20%20%20%20(a%3A%20number)%20%3D%3E%20(%7B%20a%3A%20''%20%7D%0D%0A)

Aleh
07.12.2016
12:14:26
ты чет не то скинул)

забыл share нажать наверное

Vladimir
07.12.2016
12:14:57
Нет, все то

Первый кейс работает

Второй нет

Vladimir
07.12.2016
12:15:17
Хотя суть одна и та же

Да, косяк

Aleh
07.12.2016
12:16:17
еще отстойно, что ошибка выводится только в pop-up

Vladimir
07.12.2016
12:16:21
https://www.typescriptlang.org/play/index.html#src=%0D%0Aclass%20Generic%3CT%3E%20%7B%20%0D%0A%20%20%20%20constructor(public%20t1%3A%20T%2C%20public%20t2%3A%20T)%20%7B%20%7D%0D%0A%7D%0D%0A%0D%0Aconst%20arr%20%3D%20%5B%0D%0A%20%20%20%20()%20%3D%3E%20(%7B%20%7D)%2C%0D%0A%20%20%20%20(a%3A%20number)%20%3D%3E%20(%7B%20a%3A%20''%20%7D)%0D%0A%5D%3B%0D%0A%0D%0A%0D%0Anew%20Generic(%0D%0A%20%20%20%20()%20%3D%3E%20(%7B%20%7D)%2C%0D%0A%20%20%20%20(a%3A%20number)%20%3D%3E%20(%7B%20a%3A%20''%20%7D%0D%0A)

Вот так

Aleh
07.12.2016
12:17:18
ага, но массивы работают вообще по своей схеме

оно там просто через | составляет тип

там другой механизм

Google
Vladimir
07.12.2016
12:18:01
Ну в целом то должно работать одинаково

У нас есть некое T и мы его не знаем, но есть несколько примеров этого T

Нужно найти наиболее конретное T, удовлетворяющее всем условиям

Aleh
07.12.2016
12:18:47
ну, я так понимаю, что const a = ["asd", {a: 1, b: 2}] - норм тип через или, function compare<T>(a: T, b: T) - а тут будет не норм

Admin
ERROR: S client not available

Aleh
07.12.2016
12:19:00
в массивах оно не ищет

точнее, если не находит, то просто через или составляет

а в функциях если не находит, то ошибка

Vasiliy
07.12.2016
12:51:38
@mkusher а ты на typescript@next ?

Aleh
07.12.2016
12:52:00
на локальной машине стоит next

ну а в проектах стейбл

Mike
07.12.2016
13:32:39
есть в тайпскрипт что-то типа friend в C++. Мне нужно объявлять методы которые видно только фреймвёрку но не юзерскому приложению.

Vasiliy
07.12.2016
13:50:23
я не слышал о таком

пробовал ставить 2.1.1, но object spread там не заработал, несмотря на https://github.com/Microsoft/TypeScript/wiki/Roadmap#21-december-2016 интересно, с какой-то минорной версии он работает чтоли?

Vasiliy
07.12.2016
13:55:01
а как ты об этом узнал?)

Dreamerinnoise
07.12.2016
13:55:28
в майлстоун посмотрел

Vasiliy
07.12.2016
13:55:34
ясно( спасибо

Dreamerinnoise
07.12.2016
13:56:03
у меня тоже не завелось, я навернул next

Google
Dreamerinnoise
07.12.2016
13:56:12
и продолжил работать дальше, помолясь

Vasiliy
07.12.2016
13:56:19
а shrinkwrap? юзаете? не уверен, что я могу так же сделать короче нафик tslint-loader

npm ERR! peer invalid: typescript@>=2.0.0, required by tslint@4.0.2 npm ERR! peer invalid: tslint@^4.0.0, required by tslint-loader@3.3.0 tslint-loader хочет tslint 4, а tslint хочет ts >= 2 короче нафик tslint-loader, не знаю зачем он мне и tslint придется глобально ставить как это сделать-то, вообще? без требования установки пакетов глабольно

Dreamerinnoise
07.12.2016
14:09:44
что за проблема поставить tsling глобально?

Vasiliy
07.12.2016
14:13:58
ну у одного один tslint, у другого – другой, хочется чтобы у всех было одинаково + не всем это нравится мб по каким-то еще другим причинам (ставить глобально пакеты, которые можно поставить для конкретного проекта локально) а если ставить tslint глобально, то и плагины к нему тоже глобально ставить нужно, это прям целая проблема

Vladimir
07.12.2016
14:41:28
привет!

Aleh
07.12.2016
14:41:34
привет)

Vladimir
07.12.2016
14:42:04
я пишу на ts под react native. Как сделать так, чтобы setInterval не был undefined?

Aleh
07.12.2016
14:42:13
есть в тайпскрипт что-то типа friend в C++. Мне нужно объявлять методы которые видно только фреймвёрку но не юзерскому приложению.
ну какой-то internal класс, у которого все публичное, а объект этого класса находится в каком-нибудь приватном свойстве

Vladimir
07.12.2016
14:47:06
кажется, нашёл. не хватало либ

Dreamerinnoise
07.12.2016
17:05:13
https://blogs.msdn.microsoft.com/typescript/2016/12/07/announcing-typescript-2-1/

Vasiliy
07.12.2016
17:06:11
ого, как раз в тему

подарок мне на др

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