
andretshurotshka?❄️кде
19.04.2018
16:38:31
замаскировали охуеть
я нет)

Max
19.04.2018
16:38:41
Тогда бестолку

Alexander
19.04.2018
16:44:14
Привет! Что за замес у WebPack 4++ с $ 2++ 'plugins: [
new webpack.ProvidePlugin({
$: "../js/src/jquery-2.1.4.min",
jQuery: "../js/src/jquery-2.1.4.min.js",
jquery: "../js/src/jquery-2.1.4.min.js",
'window.jQuery': '../js/src/jquery-2.1.4.min.js',
'window.jquery': '../js/src/jquery-2.1.4.min.js',
'window.$': '../js/src/jquery-2.1.4.min.js',
}), new UglifyJSPlugin()] ' ругается ERROR in ./js/src/jquery.datatable.js
Module not found: Error: Can't resolve 'jquery'

Google

Vladislav
19.04.2018
18:14:44
Всем привет! Есть кто TS юзает на беке ?

Vlad
19.04.2018
18:14:53
Есть

Vladislav
19.04.2018
18:16:49
Хочу спросить, есть ли какие-то подводные камни, проблемы после компиляции, отсутствие возможности использовать ту или иную библиотеку по каким-то причинам ? Почитал статьи что можно юзать, но почему в беке он не такой актуальный?

Vlad
19.04.2018
18:17:49
> но почему в беке он не такой актуальный?
В смысле?

Morsik
19.04.2018
18:18:19

Vlad
19.04.2018
18:19:03
Как раз в бэке то он и есть самый актуальный, надо быть довольно храбрым человеком чтобы по доброй воле писать отказоусточйчивый софт без статических проверок типов.
Ну, или очень трудолюбивым. В общем, масса положительных качеств требуется, которых у меня лично нет.

Vladislav
19.04.2018
18:21:13
Хммм, спасибо вам, пошел пробовать

Vlad
19.04.2018
18:22:08
Будут конкретные вопросы - пиши.

Vladislav
19.04.2018
18:23:18
Спасибо

Vlad
19.04.2018
18:36:42
Просто на всякий случай, чтобы сразу делать это правильно - пиши ввод-вывод с async/await. Пользуешься библиотекой, которая не умеет возвращать промисы - оборачивай ее API с util.promisify(). Но лучше выбирать те, что умеют промисы или async функции. В tsconfig поставь таргет ES2017 - пусть нода обрабатывает async/await нативно:
"module": "commonjs",
"target": "es2017",
"lib":[ "es2017" ],
"moduleResolution": "node",
И сразу станет хорошо, как в нормальном языке.

Олег
19.04.2018
18:43:42
Пппромисы?

Vlad
19.04.2018
18:44:20
Не. Кккалбэки.

Google

Maxim
20.04.2018
04:32:45
Всем привет. Подскажите как сделать Json следующего вида:
let errorJson = {error.code:error.message}

Mikhail
20.04.2018
04:36:26
Вам походу это надо?
{
"error": {
"code": "value",
"message": "value"
}
}

Maxim
20.04.2018
04:36:59
я пытаюсь сделать это
this.documentTypeForm.controls[error1.id].setErrors(
{error1.code: error1.message}
);
но ключ, так и остается error1.code
не изменяется на значение из поля

Mikhail
20.04.2018
04:42:01

Maxim
20.04.2018
04:44:22
Спасибо Вам большое. То что нужно)

Vladimir
20.04.2018
05:07:58

Maxim
20.04.2018
06:47:45

Roman
20.04.2018
07:35:51
Подскажите, как в typescript работать с промисами. У меня response возвращается с типом {} и я не могу от туда получить свойства, пишет, что Property does not exist on type {}
function addPlace(radii: any) {
const radius = findPlace.binarySearch.find(radii);
function getPlace(radius: number) {
const promis = new Promise(function(resolve, reject) {
api.searchNearBy(location, radius, resolve);
})
return promis;
}
getPlace(radius)
.then(response => {
const result = JSON.parse(response.data)
}
)

Artur
20.04.2018
07:37:45
Можно написать с async/await, либо указать тип промиса через new Promise<Type>(

Roman
20.04.2018
07:40:17

Вячеслав
20.04.2018
08:09:38
Парни как в ts сделать нормально, когда реализация метода может принимать разные типы аргументов, первый аргумент тип событие, второй параметры события (объект) если я в интефрейсе описываю несколько разных строк, он тупо из мержит a(t:t1, p:p1); a(t:t2, p:p2) в что-то типа a(t: t1|t2, p: p1|p2)

Vladislav
20.04.2018
08:15:37
попробуй почитать перегрузка функций в ts

Sergey
20.04.2018
08:18:01
В тс это правда немного упырно делается

Вячеслав
20.04.2018
09:12:15
где тут гуру типизации)))

Sergey
20.04.2018
09:15:41

Google

Dmitry
20.04.2018
09:16:02
Так в KeyEventObject нет поля "z"

Anton
20.04.2018
09:16:11
вот так правильно. у одной из перегрузок есть реализация, все остальные должны подходить под эту реализацию https://goo.gl/ULtrPd
Ну а дальше все ошибки компилятор тебе правильно говорит

Вячеслав
20.04.2018
09:17:27
и что там правильного то?
Ты понял что я хочу сделать?

Andrey
20.04.2018
09:18:43
Вячеслав, если я понял, то ты думаешь, что проверка аргумента type заставит тс заинферить тип аргумента body
Этого не произойдёт.

Вячеслав
20.04.2018
09:19:09

Anton
20.04.2018
09:19:22
Чё это не произойдёт то

Andrey
20.04.2018
09:19:55
Потому что сигнатура функции с реализацией — handle(type: any, body: any). Пока это так — точно не произойдёт

Anton
20.04.2018
09:19:57

Вячеслав
20.04.2018
09:20:26
Дак ты сделай что бы в обоих случаях работало

Вячеслав
20.04.2018
09:20:32
В обоих ветках if

Anton
20.04.2018
09:23:16
А, блин, вот я гоню. Сорян. Походу реально не работает :)

Сергей
20.04.2018
09:23:22
https://github.com/Microsoft/TypeScript/pull/23430
Было уже?

Anton
20.04.2018
09:24:58
даже дважды

Вячеслав
20.04.2018
09:28:54
днище

Andrey
20.04.2018
09:29:40

Вячеслав
20.04.2018
09:31:28

Google

Andrey
20.04.2018
09:32:21
А раз уж костыли, то можно вообще отказаться от аргумента type и написать тайпгарды к типу события

Вячеслав
20.04.2018
09:32:39
1Все это должно помогать жить, а не диктовать свои ебаные правила жизни

andretshurotshka?❄️кде
20.04.2018
09:35:04
че ваще надо сделать?

Admin
ERROR: S client not available

andretshurotshka?❄️кде
20.04.2018
09:35:22

Вячеслав
20.04.2018
09:36:30

Dmitry
20.04.2018
09:37:12
А, надо как раз, чтобы на body.z вываливалась ошибка о том, что такого поля нет?

Вячеслав
20.04.2018
09:40:35
А, надо как раз, чтобы на body.z вываливалась ошибка о том, что такого поля нет?
Мы определились уже что ts тупо не умеет создавать такой метод на разный набор типов аргуметов, не умеет и хер с ним, все проехали уже, костыли в виде "сделать два разных метода", "засунуть всё в один объект", "сделай ненужную проверку в коде" это не решения, а ебаные костыли, которые мне лично не уперлись)
Всем спасибо за помощь кто участвовал!

andretshurotshka?❄️кде
20.04.2018
09:41:11
типизируется как редакс
https://goo.gl/Za7XBA

Вячеслав
20.04.2018
09:42:25
https://goo.gl/Za7XBA
Только объясни мне почему ts должен мне указывать сколько аргументов я хочу передавать?

andretshurotshka?❄️кде
20.04.2018
09:42:42
а не тип вокруг кода

Вячеслав
20.04.2018
09:43:17
Нет, тысячу раз нет, я пишу код, а типы нужны для проверки.
Иначе вся моя работа будет тупо попытка угодить недоделанному ещё компилятору

Dmitry
20.04.2018
09:43:44
можно вот так ещё: https://goo.gl/MqNF3E

Вячеслав
20.04.2018
09:44:27

Sergey
20.04.2018
09:47:21
Чего ж у тебя пичот-то так

Google

andretshurotshka?❄️кде
20.04.2018
09:48:12

Вячеслав
20.04.2018
09:51:26
конечно логичнее всего тут такое
https://goo.gl/WueimN
Но тоже костылёк, куда же мы без них в 20!8 )))

andretshurotshka?❄️кде
20.04.2018
09:54:02
>as логичнее

Kelin
20.04.2018
09:55:06
ass

Dmitry
20.04.2018
10:11:33
Есть ли кто-нибудь, кто использует bem-react-core?

Dimanius851
20.04.2018
11:07:37
const func: (num: number) => string = String;
Что это
= string

Andrew
20.04.2018
11:08:51
это значит что мы используем конструктор String в качестве функции, превращающей число в строку

Dimanius851
20.04.2018
11:09:39
Блин, не понял

Andrew
20.04.2018
11:10:22
const func - объявление локальной переменной с названием func
(num: number) => string - ее тип, подразумевающий функцию, принимающую число и возвращающую строку
String - ее начальное значение, это равнозначно x => new String(x)

Dimanius851
20.04.2018
11:12:34
Понял, но не понял