
Roman
18.09.2018
19:34:56
на самом деле независимых запросов не так и много

Андрей
18.09.2018
19:35:21
я использую в 95% случаев Промис.олл
но вы наверное не догадаетесь зачем )

Евгений
18.09.2018
19:36:19

Google

Андрей
18.09.2018
19:36:34
чтобы протащить все ответы до конца последнего запроса

Евгений
18.09.2018
19:37:27
ну так я и имел в виду это ) собственно для этого и продумана эта функция....

Андрей
18.09.2018
19:38:12
не, это ее побочный эффект ) придумана она чтобы действительно параллелить промисы, а я тащу синхронные значения используя ее

Евгений
18.09.2018
19:38:47

Андрей
18.09.2018
19:39:17
правильно. но я сую в нее 1 промис и 10 не промисов

Евгений
18.09.2018
19:40:09
Тогда это максимально странно))

Андрей
18.09.2018
19:40:27
поэтому и говорю что не догадаетесь )
в жс - да, странно

Евгений
18.09.2018
19:40:52
вообще от обычнх просмиов без await меня отбил проект .... из за обработки ошибок на кажом уровне код выглядел ужасно

Андрей
18.09.2018
19:41:18
может он был просто неоптимально и неудобно написан?

Евгений
18.09.2018
19:43:25
да нет .... как раз таки оптимально просто на разно уровне ошибка должна быть своя.... и соотвственно логирвоние должно просиходить соответствующе..... грубо говоря если в auth сервисе упала у тебя 500 ошибка при запросе.... то на самый верх должно выпасть исключениее уже прошедщее 3-4 блока кэтч.... и с номальной понятной ошибкой

Andrew
18.09.2018
19:45:10

Евгений
18.09.2018
19:46:08
ты имеешь в виду деструктуризацию? типо
const { body } = await request({....

Google

Евгений
18.09.2018
19:47:14
ну в место body поставь имя проперти в которую ложиьтся тело респонса

Andrew
18.09.2018
19:47:19
{"method":"access_token","timestamp":1537299993,"success":{"response":{"access_token":"c739b1504f186accec642e834ff02d7a6db0a18d"}}}
вот такое приходит, хочу сразу чтобы токен был переменной присвоен, как при работе с json
если дописать
success.response.access_token
то не работает
?

Евгений
18.09.2018
19:50:16

Andrew
18.09.2018
19:50:34

Евгений
18.09.2018
19:50:35
если да то у тебя пришла строка...
и request не распарсил ее

Andrew
18.09.2018
19:51:22

Евгений
18.09.2018
19:52:01
сделай typeof
тут да
просто ты прислал код с ""
а так обычно когда она не распаршена)
ты что за библеотеку искользуешь? https://github.com/request/request эт?

Andrew
18.09.2018
19:53:32

Евгений
18.09.2018
19:56:12
что то странно .... вроде как все верно......
а что сервер отдает в json?
чет подазрения что что то не то ты в лог выводишь?
и проверь под отладчиком что там)

Andrew
18.09.2018
19:58:24
Вот так если сделать, то работает
console.log(access_token.success.response.access_token);

Google

Andrew
18.09.2018
19:59:12
вот так, но ошибка что такого нет

Евгений
18.09.2018
20:02:05
Да ток хотел написать)
Ты брал свойства из промиса
Вместо его результата)

Andrew
18.09.2018
20:02:55
ага

Евгений
18.09.2018
20:03:22
И такую цепочку лучше не писать.... Так как шанс исключения очень велик

Andrew
18.09.2018
20:04:52
а ифы только усложнят все

Евгений
18.09.2018
20:06:15
Евгений Абрамович:
Ну да ну да) бери ее из переменной хотя бы)

Andrew
18.09.2018
20:08:29
а выгода какая от этого получится?

Евгений
18.09.2018
20:08:38
Просто сразу от возвращаемого значения брать пропертю такое себе.

Andrew
18.09.2018
20:08:51
я думал наоборот нормально сократить

Евгений
18.09.2018
20:08:55
Ты видишь что это респонс не просматривается блок вызова запроса
И замечая что в конце оказывается там припсочка что это там какая то пропера какого обьекта

Google

Andrew
18.09.2018
20:10:14
?

Евгений
18.09.2018
20:10:37
Сорян за текст пишу с телефона)
Нормально сократить когда это не влияет на читаемость.... Но в реальных проектах в основном пишут для удобочитаемости.... Так проще поддерживать код

Andrew
18.09.2018
20:12:00
ок, спасибо

Андрей
18.09.2018
20:13:20
В реальных проектах есть кодстайл и ковеншоны, а для себя как хочешь пиши )

Admin
ERROR: S client not available

Андрей
18.09.2018
20:14:39
Может подскажете, svg line как сделать малой кровью чтобы было видно направление? Стрелки не хочу, хочу плавное изменение цвета от одного края к другому. оно так умеет?

Евгений
18.09.2018
20:15:18

Andrew
18.09.2018
20:39:15

Defragmented
18.09.2018
20:53:25
var a=(function m(){
var x = 3;
return function k() { return m;}
})()
alert(a.m); // undefined. как исправить? по дебаггеру "а" содержит
function m(){ var x = 3; return function k() { return m;} }
в идеале получить что-то типа a.m.x==3
т.е. доступ в namespace спрятанный в переменной
п.с. если попытаться ставить (), ()(), ()()()... после "a" то там циклически меняются функции k и m в ответе
если попытаться ловить this то он показывает на window а не на "a" или "m"
где именно хранится x?

Евгений
18.09.2018
20:54:39
ну если брать конкретно params то это эквивалентно params: JSON.stringify({password, login});
вообще json передавать чеерз get то еще извращение для этого есть метод post

Andrew
18.09.2018
20:56:02

Евгений
18.09.2018
21:01:33
var a=(function m(){
var x = 3;
return function k() { return x;}
})()
=>
a() вернет 3
а что ты пытаешься этим сделать?

Defragmented
18.09.2018
21:02:53

Евгений
18.09.2018
21:03:34

Google

Defragmented
18.09.2018
21:04:19
не понял тебя приведи пример
var a=(function m(){
var x = 3;
var x2=9;
var x3=5;
var x8=9;
...
var x948=8;
return function k() { return x;}
})()

Евгений
18.09.2018
21:06:44
ну вообще что то станное мутишь ... или у меня уже голова не варит...
var a=(function m(){
var object = {
x: 3,
x2: 9,
x3: 5,
x8=9;
...
x948=8,
}
return function k() { return object;}
})()
так ты можешь брать a().x // 3
но для чего это вообще не могу понять

Defragmented
18.09.2018
21:07:25
это тоже потребует сравнимых усилий - весь код переписывать с
x=5;
на
x:5,
для чего: не захламлять global, не менять стиль кода (x=5; или x:5,)

Евгений
18.09.2018
21:13:31
не уврен что это вообще возчожно .... .рефакторинг никому еще не повредил) просто большо похоже на изобретение велосипеда там где нет в этом нужжы

Anonim
18.09.2018
21:36:33

Defragmented
18.09.2018
21:37:07
(или я не нашел как это сделать)

Евгений
18.09.2018
21:47:27

Defragmented
18.09.2018
21:48:02
пока мои страдания\результаты поиска для namespace:
(function(){/*код*/})()
сложно доставать локальные переменные но в целом удобно
модули - работает строго для файлов полученных по урл. нельзя генерировать или встраивать в html
object - требует переписать весь код с x=5; на x:5, (будет ли это вообще работать с x+=1;?)
class - требует везде писать .this

baster
19.09.2018
04:25:48
Ребят надо в двумерном массиве найти значение, если его нет, то вывести алерт

Andrey
19.09.2018
04:26:30

baster
19.09.2018
04:26:42
Подскажи конструкцию )