@typescript_ru

Страница 456 из 669
Aleh
05.01.2018
14:43:40
А кто это?
меинтейнер

Mike
05.01.2018
14:43:58
А кто это?
автор 423 коммитов в ts, топ 13 по счёту коммитер в ts

Aleh
05.01.2018
14:44:01
а мы
а мы юзаем преттиер с semi:false

Igor
05.01.2018
14:44:16
я слышал, некоторые даже if по строкам делят

Google
Mike
05.01.2018
14:45:04
Зачем сепарировать проверку типов компилятора по файлам?
Потому что там не только проверка типов и потому что этот код нужен в других модулях иногда, и потому что его, чекер тупо неудобно развивать в таком виде

Aleh
05.01.2018
14:45:40
там вроде даже дефайнятся все базовые типы

Mike
05.01.2018
14:45:54
потому что я находу там код который мне нужен для моих трансформов, он там есть, делает точно что нужно, но недоступен

Ҫѐҏӗѫӑ
05.01.2018
14:46:41
ща спросят зачем тебе канпилятор

Mike
05.01.2018
14:48:03
ща спросят зачем тебе канпилятор
о, если пропустить подробности которые и так все тут слышали, то чтоб денег продукт продолжил зарабатывать

Eugene
05.01.2018
14:49:39
Кто нибудь знает способ, как заставить тс не шарить глобальные тайпинги между модулями? // entry.ts import { getA } from './a'; import { getB } from './b'; console.log(getA(), getB()); // a.ts import 'jquery'; export function getA(): Element { return $('.class')[0]; } // b.ts export function getB(): Element { return $('.class-2')[0]; // должен упасть с unknown $ }

Aleh
05.01.2018
14:50:19
import $ from ‘jquery’

и дальше настроить бандлер

Ҫѐҏӗѫӑ
05.01.2018
14:50:51
сразу видно жквери не импортил

Eugene
05.01.2018
14:50:52
Ну это не только этого модуля касается. Здесь чисто для примера.

Ҫѐҏӗѫӑ
05.01.2018
14:50:59
* as $

Google
Eugene
05.01.2018
14:51:34
Понятное дело что можно всё переписать и сделать правильно.

Ҫѐҏӗѫӑ
05.01.2018
14:51:55
у меня тут недавно был проект, который написали верстальщики

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

Eugene
05.01.2018
14:52:14
* as $
Я вообще не уверен, что это поможет - у нас еще 1.7 ?

Ҫѐҏӗѫӑ
05.01.2018
14:52:15
я переделывать не стал, но типов добавил

самый свежий жквери в мире наверное

Aleh
05.01.2018
14:55:13
каеф

Eugene
05.01.2018
14:55:30
Кто нибудь знает способ, как заставить тс не шарить глобальные тайпинги между модулями? // entry.ts import { getA } from './a'; import { getB } from './b'; console.log(getA(), getB()); // a.ts import 'jquery'; export function getA(): Element { return $('.class')[0]; } // b.ts export function getB(): Element { return $('.class-2')[0]; // должен упасть с unknown $ }
Чтобы отвязаться от jquery: // entry.ts import { getA } from './a'; import { getB } from './b'; console.log(getA(), getB()); // a.ts declare global { interface Window { someGlobalVar: number; } } export function getA(): number { return window.someGlobalVar; } // b.ts export function getB(): number { return window.someGlobalVar; // fail? }

Избавиться от глобальных переменных непросто и не всегда можно/нужно, но каждый модуль должен явно затащить себе в депсы модуль с глобальной переменной, если он её использует.

Aleh
05.01.2018
14:57:36
так window.someGlobalVar все равно ж работать будет

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

Eugene
05.01.2018
14:58:12
Ну так если я добавлю entry2.ts и там затащу только b.ts, то компилиться будет, а перенной не будет.

Aleh
05.01.2018
14:58:45
если у тебя где-то будет подключаться a.ts, то доступ будет везде

Ҫѐҏӗѫӑ
05.01.2018
14:59:51
чуть не забыл сохранить

Eugene
05.01.2018
15:00:02
если у тебя где-то будет подключаться a.ts, то доступ будет везде
// entry2.ts import { getB } from './b'; console.log(getB()); // и тут будет undefined

Aleh
05.01.2018
15:01:41
Да
ну не оч удобно, но если тебе подходит, то ок)

Google
Eugene
05.01.2018
15:02:08
Aleh
05.01.2018
15:02:26
Eugene
05.01.2018
15:03:33
SPA? Или просто весь код на всех страницах есть?

Aleh
05.01.2018
15:06:16
spa

Vladimir
05.01.2018
16:35:33
Случайно же

Сразу отжал

andretshurotshka?❄️кде
05.01.2018
23:34:53
Ҫѐҏӗѫӑ
06.01.2018
02:14:05
в коммитерах

Mike
06.01.2018
05:18:27
а как топ посмотреть?
https://github.com/Microsoft/TypeScript/graphs/contributors

Mykola
07.01.2018
05:16:05
`class User { private hisname: string; private static printUser() { console.log(this.hisname); } }` // Property hisname doesn’t exist on type of typeof User property. Как павильно будет зааксесить hisname ?

Mykola
07.01.2018
05:20:50
Static убери
private static это типа не правильно делать ?

Тимофей
07.01.2018
05:21:39
private static это типа не правильно делать ?
Ты знаешь что такое статический метод? Это метод класса а не инстанса зачем он тебе тут?

private static это типа не правильно делать ?
Что тебе именно нужно сделать?

Mykola
07.01.2018
05:23:21
Ты знаешь что такое статический метод? Это метод класса а не инстанса зачем он тебе тут?
Статический метод можно аксесить на классе без создания инстанса.

Тимофей
07.01.2018
05:24:32
Статический метод можно аксесить на классе без создания инстанса.
Но ты в нем обращаешься к полю инстанса. Еще раз, что тебе конкретно нужно сделать

Mykola
07.01.2018
05:25:49
Нужно получать доступ к приватному полю в классе из приватного метода этого класса

Тимофей
07.01.2018
05:27:00
Aleh
07.01.2018
08:41:30
Google
Mykola
07.01.2018
19:27:53
Я не могу понять как правильно будет получать доступ к privat методам при данной ситуации: Есть раут, инстанс класса и ошибка

Admin
ERROR: S client not available

Mykola
07.01.2018
19:28:02


Тимофей
07.01.2018
19:32:00
Я не могу понять как правильно будет получать доступ к privat методам при данной ситуации: Есть раут, инстанс класса и ошибка
Я писал тебе что проблема не в приватах тут, а в том что нужно метод контроллера прибиндить. Почитай про bind call и apply

Юра
07.01.2018
19:34:56
А как вообще static на уровне es5 задать?

Без ts?

Просто ссылка на конструктор.method = ()=>{}

Сергей
07.01.2018
20:58:47
стрелки можно было заюзать

Mykola
07.01.2018
21:00:45
?

Bogdan
08.01.2018
09:00:16


почему packet может быть undefined, если я сделал проверку?

Дмитрий
08.01.2018
09:02:37
Потому что блочная видимость

Bogdan
08.01.2018
09:04:43
в блоке он может быть андефайнд

я должен его проверять на андефайнд, хотя в массиве гарантировано был хотя бы один элемент

Дмитрий
08.01.2018
09:05:46
в блоке тоже может быть

массив может состоять из undefined

Дмитрий
08.01.2018
09:06:03
Bogdan
08.01.2018
09:06:17
у массива тип Array<{ size: number, type: PacketType, dest: number }>

Google
Bogdan
08.01.2018
09:07:09
аа, пустой массив туда ж тоже попадает

но у меня проверка

Олег
08.01.2018
09:25:19
но у меня проверка
Как-то так, наверное, const packet = (node.bufferIn && node.bufferIn.length) ? node.bufferIn.pop() : null;

Так и область видимости решится и дефолтное значение присовите

Bogdan
08.01.2018
09:27:57
так у пакета все равно может быть undefined

Олег
08.01.2018
09:28:20
Это как?

Из pop()?

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