@typescript_ru

Страница 96 из 669
Vasiliy
18.10.2016
11:47:41
ого, да, я похоже этого не знаю

а что за асершн?)

Aleh
18.10.2016
11:48:20
https://basarat.gitbooks.io/typescript/content/docs/types/type-assertion.html

Eugene
18.10.2016
11:48:45
ну типа решаешь за компилятор, что это за тип

Google
Eugene
18.10.2016
11:49:22
Да, почему с маленькой?

Vasiliy
18.10.2016
11:49:41
а

забавно, я этим пользовался, но не знал что это называется асершн)

The reason why it's not called "type casting" is that casting generally implies some sort of runtime support. However type assertions are purely a compile time construct and a way for you to provide hints to the compiler on how you want your code to be analyzed.

Aleh
18.10.2016
11:49:55
https://www.typescriptlang.org/play/index.html#src=interface%20Counter%20%7B%0D%0A%20%20%20%20(start%3A%20number)%3A%20string%3B%0D%0A%20%20%20%20interval%3A%20number%3B%0D%0A%20%20%20%20reset()%3A%20void%3B%0D%0A%7D%0D%0A%20%0D%0Afunction%20getCounter()%3A%20Counter%20%7B%0D%0A%20%20%20%20let%20counter%20%3D%20%3Ccounter%3Efunction%20(start%3A%20number)%20%7B%20%7D%3B%0D%0A%20%20%20%20counter.interval%20%3D%20123%3B%0D%0A%20%20%20%20counter.reset%20%3D%20function%20()%20%7B%20%7D%3B%0D%0A%20%20%20%20return%20counter%3B%0D%0A%7D

ругается

видимо в коде есть еще какой-то counter :)

Eugene
18.10.2016
11:51:07
секунду

interface Counter { (start: number): string; interval: number; reset(): void; } function getCounter(): Counter { let counter = <counter>function (start: number) { }; counter.interval = 123; counter.reset = function () { }; return counter; } let c = getCounter(); c(10); c.reset(); c.interval = 5.0; </counter>

"</counter>" это буду понимать, после того как прочту раздел JSX в хэндбуке?

Aleh
18.10.2016
11:53:22
это какой-то жесткач

Eugene
18.10.2016
11:53:42
читаю перевод хэндбука

Aleh
18.10.2016
11:53:44
ну, jsx и tsx работают одинаково примерно, это ваще что-то невалидное

Google
Aleh
18.10.2016
11:53:51
такой себе перевод, видимо

Eugene
18.10.2016
11:53:52
http://typescript-lang.ru/docs/Interfaces.html#Гибридные типы

Aleh
18.10.2016
11:53:53
дай линк

Eugene
18.10.2016
11:54:04
все линк

Fedor
18.10.2016
11:55:02
это ошибка однозначно в хэндбуке

Eugene
18.10.2016
11:55:05
да, походу перевод коряво сделали, что аж в коде ошибки допустили

Aleh
18.10.2016
11:55:07
https://www.typescriptlang.org/docs/handbook/interfaces.html

Eugene
18.10.2016
11:55:10
в хэндбуке норм

interface Counter { (start: number): string; interval: number; reset(): void; } function getCounter(): Counter { let counter = <Counter>function (start: number) { }; counter.interval = 123; counter.reset = function () { }; return counter; } let c = getCounter(); c(10); c.reset(); c.interval = 5.0;

Aleh
18.10.2016
11:55:15
Hybrid types тут все ок

да

что характерно, из-за jsx/tsx советуют не использовать форму <Counter>, лучше function() ... as Counter;

а в хендбуке по-старому еще

Eugene
18.10.2016
11:56:09
мне тоже больше нравится as

даже не знаю что делать, читать на английском хэндбук чтоли

просто с трудностью понимается текст

а если на английском, то еще трудней

Vasiliy
18.10.2016
11:56:58
лучше все читать на англ

имхо

и везде сменить язык на английский

Google
Eugene
18.10.2016
11:57:17
да так и делаю в принципе

читаю только на русском, а в целом видео и интерфейсы везде на англ

Andrey
18.10.2016
12:18:06
Подскажите, как можно указать крневую директорию в tsconfig.json что бы не пиcать ../ /// <reference path="../typings/index.d.ts" />

Nikita
18.10.2016
12:18:39
вроде в files можно просто добавить

Andrey
18.10.2016
12:19:18
Nikita
18.10.2016
12:19:31
в tsconfig в массиве files

Vlad
18.10.2016
12:23:45
всем привет, можете подсказать как можно решить следующую проблему - понадобилось перевести проект с галпа на вебпак, чтоб не создавать отдельный репозиторий отбил отдельный бранч, заинсталил вебпак, прописал конфиг, удалил некоторые файлы в проекте, настроил вебпак сервер, запускаю сервер, а он запускает файлы с другого бранч

Aleh
18.10.2016
12:24:27
чиво

Vasiliy
18.10.2016
12:24:49
вопрос про гит? https://git-scm.com/book/ru/v1/%D0%92%D0%B5%D1%82%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B2-Git-%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B-%D0%B2%D0%B5%D1%82%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F-%D0%B8-%D1%81%D0%BB%D0%B8%D1%8F%D0%BD%D0%B8%D1%8F

Andrey
18.10.2016
12:26:13
И еще по lodash. Почему ругается, косяк в тайпингах lodash? \typings\globals\lodash\index.d.ts:20795:4 Duplicate identifier 'export='.

Vasiliy
18.10.2016
12:29:42
если он файлы из другой ветки использует, то может быть и про гит (или файловую систему)

Vlad
18.10.2016
12:30:08
но я же бранч не менял

Aleh
18.10.2016
12:32:17
таки про гит вопрос)

Vlad
18.10.2016
12:33:06
но прикол в том, что галп нормально реагировал на смену веток и подхватывал текущую

Aleh
18.10.2016
12:34:13
учитывая, что ни вебпаке, ни галп вообще не оперируют ветками, а берут то, что есть в фс

"пробовали выключить и включить?"

Vlad
18.10.2016
12:39:49
Ахахах

Andrey
18.10.2016
12:50:52
это TS. Страдай.
Я так и подумал что это расплата )))

Google
Viacheslav
18.10.2016
15:58:03
Я так и подумал что это расплата )))
проблема не в тс судя по сообщению у тебя несколько тайпингов на один lodash

Farrux
18.10.2016
18:08:26
Добрый вечер, ребята можете порекомендовать хороший postgresql driver для typescript

Vadim
18.10.2016
18:31:35
Привет всем! У меня интерфейс объекта такого вида: {[name: string]: any} Задача в том, что именем поля может быть только что-то из перечисляемого строкового типа type Names = 'one' | 'two' | 'three'; Как мне это сделать?

Дело в том что на такую конструкцию компилятор ругается {[name: Names]: any}

Дмитрий
18.10.2016
18:32:29
Никак вроде

Vladimir
18.10.2016
18:32:37
есть способ

andretshurotshka?❄️кде
18.10.2016
18:33:02
https://github.com/Microsoft/TypeScript/issues/5683

Vladimir
18.10.2016
18:33:31
https://flowtype.org/try/#0PQKgBAAgZgNg9gdzCYAoVAXAngBwKZgByAhgLZ4DOYAvGAORwB2edYAPvRgnKx3RgAsATnhYBuMOmz4wADRpgA3mADajMngBcRDRQC624oyxgAvmKA

Admin
ERROR: S client not available

Vladimir
18.10.2016
18:34:40
Большая часть вопросов с тайпскриптом решается перезодом на flow)

Дмитрий
18.10.2016
18:35:09
Да, уговорил

Чёт вообще уг какое то

Нафига тс нужен в текущем виде, я внезапно потерял понимание. Того нельзя, этого нельзя

andretshurotshka?❄️кде
18.10.2016
18:38:37
тайпингов зато много

Дмитрий
18.10.2016
18:40:04
Они в vscode и к js проектам подтягиваются

"TS — это штука для типизированных подсказок для лодаша, так и запишем"))

Nikita
18.10.2016
19:13:35
тайпингов зато много
И смысл, если их все равно руками переписывать под себя надо?)

Aleh
18.10.2016
19:15:25
ну так-то да, в ts все меньше видится смысл(

https://flowtype.org/try/#0PQKgBAAgZgNg9gdzCYAoVAXAngBwKZgCCAjGALxgDeqYY2+AXGAEQCGxzA3KgL7f0FCAJnJUadXHiZshXXv0lFRJMAB8iQ7qigBXAHYBjDAEs4esFDhwAFAA8mhAJRjaAZwTGMBgBZ2AdALO1LS0BqyuBGwcDOIhYABOeBg68ebMcnFhESyssjFxtInJqSwZIVmRrADMzPkFRSlpZTziDSXp3C1AA хотя они тоже не все спешат исправлять(

https://www.typescriptlang.org/play/index.html#src=%2F*%20%40flow%20*%2F%0D%0A%0D%0Atype%20A1%20%3D%20%7B%0D%0A%20%20type%3A%20%22a1%22%3B%0D%0A%7D%3B%0D%0Atype%20A2%20%3D%20%7B%0D%0A%20%20type%3A%20%22a2%22%3B%0D%0A%7D%3B%0D%0Atype%20A%20%3D%20A1%20%7C%20A2%3B%0D%0A%0D%0Afunction%20foo(x%3A%20A)%20%7B%0D%0A%20%20switch(x.type)%20%7B%0D%0A%20%20%20%20case%20%22a1%22%3A%0D%0A%20%20%20%20%20%20return%20%22%22%3B%0D%0A%20%20%20%20case%20%22a2%22%3A%0D%0A%20%20%20%20%20%20return%20%22%22%3B%0D%0A%20%20%20%20case%20%22a3%22%3A%0D%0A%20%20%20%20%20%20return%20%22%22%3B%0D%0A%20%20%7D%0D%0A%20%20return%20%22%22%3B%0D%0A%7D%0D%0A

Google
Ave
18.10.2016
20:42:15
Пишу JS код в WebStorm / IDEA / etc... – 56 ??????? 44% Atom – 24 ??? 19% Visual Studio Code – 17 ?? 13% Sublime Text – 16 ?? 13% Vim – 10 ? 8% Visual Studio (windows) – 3 ▫️ 2% Emacs – 2 ▫️ 2% Notepad++ ▫️ 0% Nuclide (facebook) ▫️ 0% Brackets (Adobe) ▫️ 0% ? 128 people voted so far.

Aleh
18.10.2016
20:43:55
ого, vim популярен

Ave
18.10.2016
20:45:29
очень странно что в emacs никого

Nikita
18.10.2016
20:46:45
опрос странный, не хватает варианта "на коленке", не хватает выбора нескольких вариантов

Aleh
18.10.2016
20:47:09
телего-опросы они такие, пока бота найдешь, уже и вопрос забудешь)

Vasiliy
18.10.2016
21:12:07
жаль, нельзя выбрать несколько

Ҫѐҏӗѫӑ
18.10.2016
21:37:04
http://www.meetup.com/BeerJS-Moscow/events/234950908/

Andrey
19.10.2016
02:12:11
проблема не в тс судя по сообщению у тебя несколько тайпингов на один lodash
Судя по сообщению ошибки, то несколько тайпингов в одном файле тайпинга для lodash. ERROR in [default] D:\Projects\typescript-example\typings\globals\lodash\index.d.ts:20795:4 Duplicate identifier 'export='. ERROR in [default] D:\Projects\typescript-example\typings\modules\lodash\index.d.ts:18541:0 Duplicate identifier 'export='. declare module "lodash" { export = _; } export = _;

Sergey
19.10.2016
06:17:25
https://www.typescript-weekly.com/

Vasiliy
19.10.2016
12:26:33
https://github.com/typestyle/typestyle

Oleg
19.10.2016
12:35:27
Коллеги, надоело гуглить, что-то понять не могу как использовать интерфейсы реакта у себя? Я пробовал сделать импорт d.ts файла к себе, но чет он говорит что это не модуль

Я хочу описать интерфейс функции, где возвращаемое значение это ReactElement

Aleh
19.10.2016
12:37:06
typescript2?

Oleg
19.10.2016
12:37:18
2.1-dev

Aleh
19.10.2016
12:37:36
тогда тайпинги ставьте через npm и забудьте о подключении сторонних d.ts

class MyComponent extends Component<...>{ ... } function test(): MyComponent

Oleg
19.10.2016
12:38:51
Ну так у меня стоят тайпинги и .d.ts реакта я установил, но как мне использовать те интерфейсы что они у себя описали

Aleh
19.10.2016
12:39:09
import { Component, ReactElement } from "react"

короче import/export

Oleg
19.10.2016
12:40:14
О, спасибо, я просто пытался импортить именно .d.ts файл

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