southyyy
Спасибо ознакомлюсь
southyyy
@lverbitskiy Попробовал подключить его к себе в проект, но выдается ошибка…
southyyy
import { exec } from 'child_process';
Пише, что exec is not a function
Lev
Это не во фронте делается
southyyy
А есть пример реализации?
southyyy
если мне по нажатию кнопки на фронте надо допустим хром открыть?
Yura
Всем привет. Не могу понять почему не создается сертификаты ? Знает кто то в чем ошибка ?
Alexey
Alexey
Не пользуйюсь к счастью виндой сто лет уже, но могу предположить решение - возьми makecert.exe и кинь его в корень диска или папку, но так чтобы путь был без пробелов
Alexey
Хотя стоп. Вообще тебя спрашивают указать путь bin папки
Alexey
А ты в глубину ушел
southyyy
Alexey
Electron.js releases
v12.0.0-nightly.20200928
https://github.com/electron/electron/releases/tag/v12.0.0-nightly.20200928
v12.0.0-nightly.20200928
Yura
насколько я понял что нужно там прописывать путь к сертификату а в electron-windows-store он записывается раз и в конфиг, вообщем кто как пушит в win store ?
Alexey
Yura
Alexey
я под винду не сертифицировал ничего никогда, поэтому просто доку кидаю) вдруг поможет)
Yura
понял, спасибо)
Alexey
issue вот такое нашел. тут скорее интересен его пример package.json от которого можно оттолкнуться
Alexey
https://github.com/electron-userland/electron-builder/issues/4931
Electron.js releases
v10.1.3
https://github.com/electron/electron/releases/tag/v10.1.3
v10.1.3
Alexander
Привет. Нужна подсказка.
сейчас использую такой код:
const ret = globalShortcut.register('CommandOrControl+W', () => {
console.log('CommandOrControl+W is pressed');
mainWindow.minimize();
});
Но хочу сохранить в конфиге config.tpl.json
что-то типа:
"globalShortcuts": [
{
"key": "CommandOrControl+Shift+W",
"inputEvents": [
{
"keyCode": "CommandOrControl+Shift+W",
"type": "minimize"
}
]
}
],
globalShortcut.register(shortcut.key, () => {
shortcut.inputEvents.forEach((inputEvent) => {
mainWindow.webContents.sendInputEvent(inputEvent);
});
});
Пока не работает. Можно ли вообще сделать так, чтобы в конфиге была команда минимизации окна ?
Alexey
А просто switch case с вызовом команд в зависимости от type не подойдёт? И странная структура, непонятно зачем дублируется keyCode
Alexey
Про switch case говорю условно, потому что объектные литералы будут смотреться интереснее - можно будет вынести в отдельный файл и вызывать например: shortcutsMethods[type](mainWindow)
А описывать их соответственно так:
const shortcutsMethods = {
“minimize”: (window) => {
window.minimize();
}
}
Alexey
Описывать как регать эти хэндлеры бегая циклом по конфигу не буду, там вроде бы все и так должно быть понятно
Alexander
Anonymous
Хочу рассказать про интересный глюк, который вчера пришлось часа 2 раскапывать. Может кому-нибудь пригодится. Решил апдейтнуть электрон до 8, но в процессе теста увидел, что некоторые вещи не работают как нужно и откатился назад до 7. Сразу после этого browserwindow перестал нормально отрисовываться в режиме разработки, renderer.js висит как pending. По нескольку раз сносил node_modules, саму ноду, чистил кеш - толку 0. Пошел спать. Через 3 минуты после приземления головы на подушку осенило, что в /Users/<user>/Library/Application Support/Electron/ скорее всего остались части восьмого электрона. Снес директорию и после этого всё перестало глючить
Vadim
Кстати, вот такой контент мне нравится, с одной стороны сферический конь, но если вдруг возникнет подобное, может и вспомнится что тут такое было, так что респект за кейс.
Anonymous
Electron.js releases
v12.0.0-nightly.20200929
https://github.com/electron/electron/releases/tag/v12.0.0-nightly.20200929
v12.0.0-nightly.20200929
Or
По какому принципу формируется название директории в appdata
Yura
всем привет! Кто то знает как после сборки appx оставить файл (appxmanifest.xml) что бы посмотреть все ли те данные подтянулись ? После зборки удаляется папка с файлом
southyyy
Всем привет, есть тут кто использовал electront + ssr?
Vadim
Oleh
Может просто уже есть готовое приложение с ssr
southyyy
Вот у меня такая идея пришла что получается если так сделать то вообще обновления не нужны получаются? типа на серваке билд меняется и он тянет совсем лургие компоненты и так далее, или я в чем-то ошибаюсь?
Oleh
Можно и без ssr сделать такое
Oleh
Просто веб приложение встроить
southyyy
Ну просто я начал делать приложение electron + react, сейчас думаю как сделать намного проще обновление
Oleh
Но обновления все равно понадобятся иногда, когда новый функционал взаимодействовать с приложением (например загрузка картинок)
Alexey
main процесс придётся обновлять
southyyy
просто у меня такое понимае есть билд електрона локальный у кажлого пользователя допусти релиз 1.0 если я использую ssr то в любой момент я могу подправить что надо у пользователей и им будет отсылаться совершенно другой контент. Поправьте если я не прав.
Oleh
Да прав ты, просто мы не понимаем почему именно это надо делать через ssr
southyyy
А какие еще варики есть? я просто именно SSR понимаю что для этого подойтет, а других вариков не знаю)
Oleh
Обычная страница
Alexey
Мне кажется человек билд путает с ssr
Oleh
Загруженная через loadUrl('google.com'), как уже говорилось раньше
southyyy
а все догнал, я просто не знал что такое loadURL)
southyyy
Окей а если рассматривать автообновление (как в дискорд) по поводу такого функционала куда смотреть?
Vadim
electron-updater
southyyy
Спасибо!
Electron.js releases
v12.0.0-nightly.20200930
https://github.com/electron/electron/releases/tag/v12.0.0-nightly.20200930
v12.0.0-nightly.20200930
BARSOOQUE
Подскажите, как настроить вебпак для разработки с электроном вручную, с HMR и всем вот этим, но без electron-webpack и прочей магии?
Только-только настроил, начинаю писать ipc, и ловлю компайл тайм: Can't resolve 'fs' in '...\node_modules\electron'. Возникает это потому, что нужно в конфиге для рендера поставить target: 'electron-renderer' вместо target: 'web', меняю, и ловлю в рантайме require is not defined, из-за чего я и заменил изначально на 'web', и без включения nodeIntegration дальше не работает, а его включение ради фикса вебпака выглядит как костыль, и неизвестно что там дальше ещё поломается.
Алсо, не пойму как запилить HMR для мейн процесса, мне его тоже через webpack-dev-server запускать, получается? Пока что заколхозил нодемоном, перезапускаю полностью. Есть у кого где посмотреть рабочие написанные вручную конфиги?
Vadim
HMR для мейн процесса не пашет вроде(я не умею в такое), только автоперезагрузка всего приложения, с помощью кастомного плагина для вебпака + electron-connect
BARSOOQUE
Vadim
👍
Alexey
Подскажите, как настроить вебпак для разработки с электроном вручную, с HMR и всем вот этим, но без electron-webpack и прочей магии?
Только-только настроил, начинаю писать ipc, и ловлю компайл тайм: Can't resolve 'fs' in '...\node_modules\electron'. Возникает это потому, что нужно в конфиге для рендера поставить target: 'electron-renderer' вместо target: 'web', меняю, и ловлю в рантайме require is not defined, из-за чего я и заменил изначально на 'web', и без включения nodeIntegration дальше не работает, а его включение ради фикса вебпака выглядит как костыль, и неизвестно что там дальше ещё поломается.
Алсо, не пойму как запилить HMR для мейн процесса, мне его тоже через webpack-dev-server запускать, получается? Пока что заколхозил нодемоном, перезапускаю полностью. Есть у кого где посмотреть рабочие написанные вручную конфиги?
Я использую parcel и с target’ами не удалось подружиться и тоже ловил ошибку с fs.
Помогло то что на клиенте я стал рекваерить методы из пакета электрона таким способом:
const { ipcRenderer } = window.require('electron');
Но для меня это пока как хак, надеюсь кто нибудь ответит еще
BARSOOQUE
Vadim
Vadim
Его билдеры не должны резолвить
Vadim
Alexey
Запили боилерплейт. Накинем тебе звёздочек всем чатом))
Vadim
Vadim
На выходных будет)
Alexey
BARSOOQUE
А, и кстати с вебпаком крашится по require без nodeIndegration в любом случае, потому что другие модули его используют
BARSOOQUE
Так. А теперь у меня ещё сразу две непонятки:
Первая: на пике 1 из мейна коллбек отрабатывает, получаю в консоли true, но окно не закрывается, как так?
Вторая: на пике 2 из рендерера отправляется это сообщение, рядом лог, и вот этот лог не апдейтится после изменения, хотя оно и пишет в консоли рендерера Recompiling..., но подхватывается только перезагрузкой вручную по Ctrl+R, хотя эта функция используется в дереве компонентов реакта, на которое у меня HMR
BARSOOQUE
BARSOOQUE
Даже вот так не работает
?????
Лог, повторяю, приходит, то есть коллбек отрабатывает
BARSOOQUE
Yura
Кто постил приложение в windows store ? Почему у меня не работает
"backgroundColor": "transparent",
Все другие цвета работают
Yura
https://docs.microsoft.com/en-us/uwp/schemas/appxpackage/appxmanifestschema/element-visualelements?redirectedfrom=MSDN в доках есть
Yura
Yura
не понимаю почему ставиться синий фон
Oleh
Сейчас посмотрю
Oleh
Applies to Windows Phone: Choosing "transparent" causes the system accent color to be used.