Danila
А чем вас смущает использование babel?
Dmitry
Vadim
Банально быстрее будет работать
Dmitry
Банально быстрее будет работать
Бенчмарки есть в качестве доказательства? Потому что логика подсказывает, что даже если это так, то прирост производительности не должен быт существенным.
Vadim
Буду за компом накопаю
Vadim
Да, полный комплект, использовать что-то одно не вижу смысла)
Vadim
Отдельно считать трудно
Vadim
А так вообще все однозначно
Nikita
насчёт бандла – прирост точно будет, даже без замеров. require медленный
а насчёт минификации вопрос за v8
Vadim
Тогда не будет оверхеда
Vadim
Да и вообще, flat есть точно в 4 электроне, с 1 на нее легко подняться, а вот дальше уже могут быть сложности(если есть нативные модули)
Dmitry
Vadim
Почему парсинг будет быстрее? Код есть код. Или это из-за удаления из дерева лишних "пустых" элементов?
Если вы не про дом дерево, то респект.
1) это удаление неиспользуемого кода, лучше если с помощью tree shaking, как вы и сказали
2) Всегда нужно понимать что у юзера медленная машина и чтение данных с старого HDD + распаковка данных из asar тоже накладные ресурсы, поэтому, чем меньше букаф тем быстрее начнет исполнятся.
3) минификаторы умеют в оптимизации, экономия на коробке спичек не нужна, а минификатор может это делать везде, ведь ему не важна читабельность.
Dmitry
Horus
Привет. Установил вью с электроном, добавил файрбейс и вышло такое предупреждение. Добавил правило в конфиг вебпака и вышла ошибка. Хелпаните, не могу разобраться в чём проблема
Horus
Horus
Horus
Импортирую файрбейс в main.js
Anonymous
Импортирую файрбейс в main.js
Вот вроде тут показывают как правильно юзать его https://medium.com/firebase-developers/using-firebase-in-electron-tips-and-tricks-24ac5b44bf5a
Electron.js releases
v9.0.0-nightly.20200128
https://github.com/electron/electron/releases/tag/v9.0.0-nightly.20200128
v9.0.0-nightly.20200128
Slava
Привет. Собираю апп с помощью electron-builder. Само приложение использует puppeteer, которому нужен Chromium. Во время девелопмента все ок, но Chromium не билдится вместе с puppeteer'ом (что логично), потому после билда puppeteer бросает ошибку, что Chromium'а нет.
Знаю, что у puppeteer при создании браузера есть параметр executablePath, куда можно передать путь к браузеру, но приложение делаю под виндовс, где путь к браузеру может быть абсолютно любой.
То есть нужно как-то получить бразуер для puppeteer'а.
Какие, по-моему, есть варианты (расставил по приоритетности):
1. Добавить Хромиум в билд (взять его из node_modules, например).
2. Устанавливать Хромиум при установке самого приложения.
3. Автоматически находить путь к уже установленному Хрому и вставлять его в executablePath поле.
4. Просить пользователя вручную указать путь к установленному Хрому и вставлять его в executablePath поле.
Если что, я не знаю, как реализовать 1-3 варианты.
Может, кто станкивался с подобным, и может подсказать, как решить проблему. Спасибо
Electron.js releases
v9.0.0-nightly.20200129
https://github.com/electron/electron/releases/tag/v9.0.0-nightly.20200129
v9.0.0-nightly.20200129
Electron.js releases
v8.0.0-beta.8
https://github.com/electron/electron/releases/tag/v8.0.0-beta.8
v8.0.0-beta.8
Андрей
Привет. Собираю апп с помощью electron-builder. Само приложение использует puppeteer, которому нужен Chromium. Во время девелопмента все ок, но Chromium не билдится вместе с puppeteer'ом (что логично), потому после билда puppeteer бросает ошибку, что Chromium'а нет.
Знаю, что у puppeteer при создании браузера есть параметр executablePath, куда можно передать путь к браузеру, но приложение делаю под виндовс, где путь к браузеру может быть абсолютно любой.
То есть нужно как-то получить бразуер для puppeteer'а.
Какие, по-моему, есть варианты (расставил по приоритетности):
1. Добавить Хромиум в билд (взять его из node_modules, например).
2. Устанавливать Хромиум при установке самого приложения.
3. Автоматически находить путь к уже установленному Хрому и вставлять его в executablePath поле.
4. Просить пользователя вручную указать путь к установленному Хрому и вставлять его в executablePath поле.
Если что, я не знаю, как реализовать 1-3 варианты.
Может, кто станкивался с подобным, и может подсказать, как решить проблему. Спасибо
https://www.npmjs.com/package/puppeteer-in-electron
Electron.js releases
v7.1.11
https://github.com/electron/electron/releases/tag/v7.1.11
v7.1.11
Electron.js releases
v8.0.0-beta.9
https://github.com/electron/electron/releases/tag/v8.0.0-beta.9
v8.0.0-beta.9
Slava
https://www.npmjs.com/package/puppeteer-in-electron
Спасибо. Но с помощью этого пакета страница рендерится внутри окна электрона, а мне нужно чтобы в окне электрона отображался юзер-интерфейс, а puppeteer отдельно работал, в фоне. Я работаю с ним (с puppeteer'ом) в renderer процессе
Danila
offscreen window он не поддерживает?
Danila
Вы проверяли?
Danila
пробовали передать ему BrowserWindow с offscreen: true?
Danila
с точки зрения puppeteer разницы никакой нет
Slava
нет, не проверял, сейчас сделаю. Спасибо за совет
Electron.js releases
v9.0.0-nightly.20200130
https://github.com/electron/electron/releases/tag/v9.0.0-nightly.20200130
v9.0.0-nightly.20200130
Андрей
Tim
Добрый вечер, не подскажите как можно воспроизводить аудио файлы ?
Flamie
Tim
А ещё есть вариантами средствами js?
Anton
Андрей
Кто сталкивался с закрытием приложухи на маке? На винде закрывает и в тестовой и в билд версии хорошо, на маке выдаёт что приложение неожиданно закрыто, хотя метод закрытия стандартный, все ресурсы перед закрытием вроде бы закрываю. В чем может быть проблема или нюансы на маке?
Nikita
Anonymous
Nikita
А как бы узнать хоть в какую сторону копать?
ну у нас такое проявлялось после какого-то периода работы приложения. было похоже на утечки, возможно они были в нативном модуле и его починили, а может еще что там было. но на клиентской части вроде бы не трогали
Anonymous
Конкретно iohook
Андрей
Конкретно iohook
Там unregisterAllShortcuts и stop, или другая последовательность?
Андрей
Конкретно iohook
Спасибо) поборол) выгружать нужно было, хотя в документации этого метода вообще не написано.
Anonymous
Андрей
👍
Electron.js releases
v9.0.0-nightly.20200131
https://github.com/electron/electron/releases/tag/v9.0.0-nightly.20200131
v9.0.0-nightly.20200131
Electron.js releases
v8.0.0-beta.10
https://github.com/electron/electron/releases/tag/v8.0.0-beta.10
v8.0.0-beta.10
Ростислав ✚
Здравствуйте, наверное глупый вопрос. Я так понял electron делится на разные процессы, есть процесс с браузером где окружение это хромиум, ещё какие-то, и есть основной, нодовский. Как делается взаимодействие между этими процессами? Как что-то передать, или запустить функцию с хромиума в основном процессе?
Завтра
ipc
su
Ростислав ✚
ipc
Спасибо, то что нужно
Electron.js releases
v9.0.0-nightly.20200201
https://github.com/electron/electron/releases/tag/v9.0.0-nightly.20200201
v9.0.0-nightly.20200201
Horus
Привет. Использовать firebase для разграничения прав пользователя в электроне это не лучшая идея? Установка firebase-admin на клиентское приложении такое себе
Ростислав ✚
Здравствуйте. Какой-то странный баг у меня, всё работало норм, но когда я добавил в код process.env['INIT_CWD'] то приложение начало компилится с ошибкой, но прикол в том что даже когда я всё откатил, убрал эту строку, ошибка не изменилась, компилю в dev режиме.
ReferenceError: process is not defined
- index.html:100
C:/nodePro/reestrTZ/client/src/index.html:100:10
- index.html:103 ./node_modules/html-webpack-plugin/lib/loader.js!./src/index. html.module.exports
C:/nodePro/reestrTZ/client/src/index.html:103:3
- index.js:284
[client]/[html-webpack-plugin]/index.js:284:18
- task_queues.js:94 processTicksAndRejections
internal/process/task_queues.js:94:5
Ростислав ✚
Ещё до ошибки выводил process целиком и всё было нормально.
Андрей
Ростислав ✚
Electron.js releases
v9.0.0-nightly.20200202
https://github.com/electron/electron/releases/tag/v9.0.0-nightly.20200202
v9.0.0-nightly.20200202
Ростислав ✚
Подскажите, должно ли виснуть окно, если под нагрузкой основной процесс а не процесс хромиума?
Vadim
Да, в доке есть раздел оптимизация, советую почитать. @GeizenbergUSA
Andrey
Всем привет, подскажите как использовать пакет fs с электроном в связке с vue.js? Задача такая, загрузить json файл(путь уже есть). Пытался сделать так:
const fs = require('fs') и далее const { expertises: tableData } = fs.readFileSync('@/src/data.json');
Но пишет ошибку: Error in created hook: "TypeError: fs.readFileSync is not a function"
Георгий
Andrey
да, так же пытался через import
Andrey
Подключаю электрон через url 127.0.0.1:8080 (вдруг тут особенности какие то будут)
Vadim
Andrey
Но потом мне его надо будет сохранить, поэтому пытаюсь понять как работать с файлами тут
Vadim
Andrey
Георгий
да, так же пытался через import
Зачем? Сделай это на стороне ноды, с фронта сделай запрос и все. Либо прям сделай импорт без fs, если под капотом есть вебпак он сам просто вставит это в js