
Никита
10.07.2018
22:03:45
Но если массивы не отсортированы, то сортировать их — дороже, чем завести ключ.

Gleb
10.07.2018
22:04:49

Maxim
11.07.2018
05:51:49
Привет, подскажите как можно красиво обыграть следующее. Вызываются последовательно 5+ async функций/методов. В каждом из них может быть неизвестный ексепшен. Мне нужно каким-то образом пробросить новую ошибку выше, в зависимости от того в каком методе свалилось.
Есть более элегантный способ чем оборачивать каждый метод в трай/Кетч?

Google

Alexander
11.07.2018
05:53:08
Оберни их в одну функцию
Ну или можешь писать await fn().catch(...)

Maxim
11.07.2018
05:59:23

Alexander
11.07.2018
06:05:26

Maxim
11.07.2018
06:05:58

Naught
11.07.2018
06:30:45
Знаю, что тут такое часто спрашивают, но подскажите модуль распарсить exel , чтоб на выходе получался объект {"значение ячейки в первой строке": "значение текущей ячейки"} . То, что находил, либо по адресу ячейки обращается, либо не работает. Заранее благодарю.

Alexander
11.07.2018
06:32:51
Конверти в csv, его легче разбирать

Naught
11.07.2018
06:35:01

Alexander
11.07.2018
06:35:22
Так и конвертеров csv тоже много

Naught
11.07.2018
06:36:01

Alexander
11.07.2018
06:36:28
https://www.npmjs.com/package/xlsx

Максим
11.07.2018
06:36:31
exceljs поковыряй, особенно полезно если нужно тащить метаинфу из ячеек

Google

Alexander
11.07.2018
06:37:40
Я про второе сообщение.
Ну таблица это априори двумерный массив. Ты же хочешь хэшмапу из первого и текущего столбца (что делать с другими столбцами - история умалчивает). Значит ты хочешь что-то сверхнормативное. В таком случае надо пилить самому

Naught
11.07.2018
06:39:46
Не, не только первого. Первая строка задаёт только название поля. Таблица максимально тривиальная. Находил либу, которая из коробки даёт нужный мне результат, но она не заработала. А остальные либы дают дичайший оверхед и значения ячеек в 20 форматах сразу и т.д.

Alexander
11.07.2018
06:41:17
1) Отсей ненужные, возьми нужные
2) заставь ту либу работать
3) вышеперечисленное

Naught
11.07.2018
06:42:22
Вот, кстати , она:
https://www.npmjs.com/package/parse-xl

Alexander
11.07.2018
06:43:23
Про транспонирование матрицы слыхал?

Naught
11.07.2018
06:45:19
Ну, допустим.

Grigorii
11.07.2018
06:47:11
Подскажите, для работы с редиской в ноде только Node-redis используют, или есть что-то более интересное7

енот
11.07.2018
06:53:03
ioredis я использую
доволен в целом
говорят его юзает алибаба

Sergey
11.07.2018
06:53:56

Naught
11.07.2018
06:54:13

MaXG
11.07.2018
06:55:13
У тебя нет змеи (питона)

Sergey
11.07.2018
06:55:29

MaXG
11.07.2018
06:55:51
Так эт же написано в ошибке же
"Не могу найти исполняемую змею"

Alexander
11.07.2018
06:56:19

Sergey
11.07.2018
06:56:40

Alexander
11.07.2018
06:57:00
Может на маке ставил? Там вроде есть питон
Да и может просто пакет обновили и теперь питон нужен

Google

Maxim
11.07.2018
06:59:46
видел там выше про парсинг ексельки говорили - по опыту скажу - парсинг ексельки на ноде - говною В планеюзабельности и ф-ционала либ.
Я всемя руками за ноду но для этого кейса, если можете лучше питон - у него в разы лучше экосистема и тул-сет для этой задачи
У меня тут вопрос - я ни разу не видел дата-классов в ноде, да и в js в целом
их вообще тут пишут? если да - то как они выглядят? просто класс с кучей констатнт / статик гетеров? или что-то красивеет?

Boris
11.07.2018
07:01:22

Sergey
11.07.2018
07:01:22

Maxim
11.07.2018
07:02:10
это очень субьективно - так сложилось что приходилось работать с екселем на ноде питоне и джаве - питон для этого идиален

Sergey
11.07.2018
07:03:05

Alexander
11.07.2018
07:04:01
В дельфи ещё либы хорошие

Josh
11.07.2018
07:05:01
мягький знак то откуда

енот
11.07.2018
07:08:19
а call можно с промисами применять?

Alexander
11.07.2018
07:08:21
Между л и ф конешно

енот
11.07.2018
07:08:25
у меня чет не получается

Alexander
11.07.2018
07:08:35

енот
11.07.2018
07:08:52

Alexander
11.07.2018
07:09:06
Так первым параметром контекст

енот
11.07.2018
07:09:17
тьфу ты блин
помнил же
function from(...args) {
console.log(args);
return redis.hgetall.apply(this, ['sb:1']).then(data => {
return data;
});
}
redis.hset('sb:1', 'sss', 'tedssadsa');
async function getFromRedis() {
let z = await from('sb:1', 'sss');
console.log(z)
}
getFromRedis();

Google

Alexander
11.07.2018
07:10:24
Apply же массив принимать должен

Roman
11.07.2018
07:11:19
Всем привет. Подскажите пожалуйста, как на ноде gzip юзать?
У меня есть бандл,
bundle.js
bundle.js.gz
index.html
в ingex.html scrpit src=bundle.js
как мне на сервере отдать html но c gzip бандлом?
const express = require('express')
const compression = require('compression')
const port = parseInt(process.env.PORT, 10) || 3101;
const app = express()
app.use(compression())
app.get('/', (req,res) => {
что тут надо сделать?
})
app.listen(port, err => {
if (err) throw err;
console.log(`> Ready on http://localhost:${port}`);
});

енот
11.07.2018
07:11:28

Alexander
11.07.2018
07:12:35
Так в контекст надо не this, а рабочий контекст redis

енот
11.07.2018
07:12:56

Alexander
11.07.2018
07:13:29
так может он просит this.dropBufferSupport под капотом, а ты ему apply-ем контекст меняешь

енот
11.07.2018
07:13:49
и как мне ему его контекст передать?

Alexander
11.07.2018
07:14:14

Admin
ERROR: S client not available

енот
11.07.2018
07:14:21
а
АААА
Спасибо, Александр

Alexander
11.07.2018
07:14:52
и кстати, почему не redis.hgetall(’sb:1’)

енот
11.07.2018
07:14:54
вы мнес пасли

Alexander
11.07.2018
07:14:59
всегда пожалуйста

енот
11.07.2018
07:15:09

Alexander
11.07.2018
07:15:14
а
ну тогда славненько

енот
11.07.2018
07:15:32
да, весьма, спасибо

Roman
11.07.2018
07:21:19

Google

Grigorii
11.07.2018
07:24:18

енот
11.07.2018
07:24:46

Evgeny
11.07.2018
07:25:02
Чуваки, можно в монге построить запрос так, что бы результаты были отсортированы по предустановленному списку. Типа так: В БД есть apple, pear, orange. Я хочу чтобы в ответе мне пришли сначала все pear, потом все apple, и потом все orange. Здесь обычный .sort({type: 1}) не подойдет. А по другому я не оч умею.
И еще связанный с этим вопрос. Хочу что бы мне в ответе пришли все pear, но если ни одного pear не найдено, то тогда все apple, а если и их не найдено, то тогда все orange. Здесь я вижу решение - со стороны ноды проверять результат, и посылать следующий запрос, если предыдущий ничего не вернул. А можно ли сделать это одним запросом?

Kostya
11.07.2018
07:32:31
там же все написано в ошибке

Sergey
11.07.2018
07:34:45

Josh
11.07.2018
07:42:42
Чуваки, можно в монге построить запрос так, что бы результаты были отсортированы по предустановленному списку. Типа так: В БД есть apple, pear, orange. Я хочу чтобы в ответе мне пришли сначала все pear, потом все apple, и потом все orange. Здесь обычный .sort({type: 1}) не подойдет. А по другому я не оч умею.
И еще связанный с этим вопрос. Хочу что бы мне в ответе пришли все pear, но если ни одного pear не найдено, то тогда все apple, а если и их не найдено, то тогда все orange. Здесь я вижу решение - со стороны ноды проверять результат, и посылать следующий запрос, если предыдущий ничего не вернул. А можно ли сделать это одним запросом?
группировка это называется

Sukhrob
11.07.2018
07:43:34
Привет!
Скрипт выплюнул ошибку:
Error: ENOENT: no such file or directory, open 'D:\****erator\workspace.json'
Но не сообщил в каком файле это произошло, в какой строке...
Как сделать, чтобы он вывел имя файла и номер строки?

Roman
11.07.2018
07:48:48

Daniil
11.07.2018
07:51:56
Система с 4 ГБ озу, arch linux, flow сжирает всё и порождает кучу процессов, как его угомонить?
p.s сорри, если не по теме

Maxim
11.07.2018
07:54:48
кто с Puppeteer работал?
есть метод - page.waitForNavigation . то есть ждём пока у нас браузер после сабмита формы не пробросит на следующую пейджу. в противном случа - срёт ошибку по таймауту.
Есть ли опять апишный способ скипнуть эту ошибку? ну не перешли мы на новую урлу, так и не перешли . В доке не вижу

MaXG
11.07.2018
07:55:47
Try catch?

Дмитрий
11.07.2018
07:57:15

MaXG
11.07.2018
07:57:42
Имя файла если по имени файла - то можно рекурсивно грепнуть попробовать

Sukhrob
11.07.2018
07:57:45

MaXG
11.07.2018
07:58:52
И где-то я краем глаза видел возможность получать стектрейс

Sukhrob
11.07.2018
07:58:59
меня удивляет что можно получить ошибку без ссылки на файл и номер строки
уже много раз такое получал
хочу раз и навсегда с этим разобраться

MaXG
11.07.2018
07:59:50
общий для чего угодно - наподобие debug

Sukhrob
11.07.2018
07:59:58