Nikita
Dmitry
Я долго ждал 8.0, так как в нём версия хрома которая поддерживает optional chaining из ES2020, но пока еще не перешёл на неё
Anton
Dmitry
Да, это решение, но у меня скорее обратная проблема. Когда я начинал проект 2 года назад, то использовал electron-react-boilerplate из которого унаследовалась достаточно сложная система конфигураций и масса dev зависимостей. У кого-нибудь был опыт перехода от electron-react-boilerplate на что-то более простое?
Nikita
Without Hands
Dmitry
Андрей
А чем плох electron-builder?
Dmitry
Наоборот он хорошо, от него то как раз избавляться совсем не хочется
Electron.js releases
v9.0.0-beta.1
https://github.com/electron/electron/releases/tag/v9.0.0-beta.1
v9.0.0-beta.1
Завтра
хз я все ручками накатывал и норм было
Завтра
правда, то, как делал я, не всем понравится, наверное
я поднимал 3 инстанса парселя - на main, на renderer, и отдельно еще некоторые штуки собирал перед упаковкой
а потом собирал electron-builder'ом
Nikita
Alexiagray
const electron = require('electron')
const app = electron.app
const Menu = electron.Menu
const dockMenu = Menu.buildFromTemplate([
{
label: 'Профиль',
click () {console.log('Go to Profiles')}
},
{
label: 'Моя коллекция',
submenu: [
{ label: 'Все'},
{ label: 'Избранное'},
{ label: 'ТВ-каналы'},
{ label: 'Фильмы'},
{ label: 'Сериалы'},
{ label: 'Детям'},
{ label: 'Бесплатно'}
]
}
])
app.dock.setMenu(dockMenu)
а почему он в док не вносит менюшку на macos?
Alexiagray
Anonymous
Electron.js releases
v10.0.0-nightly.20200206
https://github.com/electron/electron/releases/tag/v10.0.0-nightly.20200206
v10.0.0-nightly.20200206
Lev
Всем привет, вопрос по serialport
const SerialPort=require('serialport');
const MockBinding=require('@serialport/binding-mock');
SerialPort.Binding=MockBinding;
const path='/dev/ttyVirtual';
MockBinding.createPort(path,{ echo:true,record:true });
const port=new SerialPort(path,{ autoOpen:true });
Создается виртуальный COM1 порт по адресу /dev/ttyVirtual (аля /dev/ttyUSB0) всё ок, всё норм, но проблема я не знаю как мне этой виртуалкой слушать команды которые я буду отправлять через port.write(data,...);
т.е. надо слушатель от отправщик со стороны виртуального порта как то выловить, я уже копал все исходники (@serialport/binding-mock) так и не понял, помогите кто уже с этим сталкивался
Flamie
привет. подскажите плс. у меня в приложении есть айфрейм, внутри которого должны быть кликабельные ссылки (типа target blank)
но они не работает, новое окно не открывается
что можно сделать?
Flamie
вот этот код работает для обычных ссылок без target _blank
Flamie
а мне надо наоборот
Electron.js releases
v10.0.0-nightly.20200207
https://github.com/electron/electron/releases/tag/v10.0.0-nightly.20200207
v10.0.0-nightly.20200207
Flamie
чтобы открывались только таргет бланк
Игорь
Может быть у ссылок нет указанного протокола, или ты вызываешь событие "назад", тоесть обрабатываются URL типа /homepage.html
Игорь
В скрипте есть условие...
Flamie
Нет, там хттпс везде
Alexiagray
const electron = require('electron')
const app = electron.app
const Menu = electron.Menu
const dockMenu = Menu.buildFromTemplate([
{
label: 'Профиль',
click () {console.log('Go to Profiles')}
},
{
label: 'Моя коллекция',
submenu: [
{ label: 'Все'},
{ label: 'Избранное'},
{ label: 'ТВ-каналы'},
{ label: 'Фильмы'},
{ label: 'Сериалы'},
{ label: 'Детям'},
{ label: 'Бесплатно'}
]
}
])
app.dock.setMenu(dockMenu)
а почему он в док не вносит менюшку на macos?
Alexiagray
Electron.js releases
v10.0.0-nightly.20200208
https://github.com/electron/electron/releases/tag/v10.0.0-nightly.20200208
v10.0.0-nightly.20200208
Andrey
Подскажите о каких версиях идет речь? и как мне подобрать верные версии?
Andrey
понял как решить, но не понял что именно это делает
npm rebuild --runtime=electron --target=7.1.11 --disturl=https://atom.io/download/atom-shell --abi=75 помогло, где --target - это версия из electron -v, а --abi - версия из electron -a
Олег
подскажите, как можно отправлять данные из ipcMain в ipcRenderer
из того что описано в доке, можно отправлять только из ipcRenderer в ipcMain
Alexiagray
Забейте, я помощи жду уже 3ий день)))
Завтра
Alexiagray
Завтра
на твой вопрос не знаю ответа, к сожалению 💁🏻♂️
Завтра
сижу на винде + меню не ковырял
Alexiagray
Я уже грешу что на эль капитан не реализован такой функционал
Олег
Alexiagray
о боже сделал
Alexiagray
app.on('ready', () => {
const dockMenu = Menu.buildFromTemplate([
{
label: 'New Window',
click () { console.log('New Window') }
}, {.......}
])
app.dock.setMenu(dockMenu)
createWindow()
})
Andrey
Пытаюсь поставить локально электрон, но постоянно сталкиваюсь с ошибкой Error: EPERM: operation not permitted, mkdir 'F:\nodejs\app\node_modules\@types
Как ее решаете?
Олег
подскажите какой нибудь драйвер для встраиваемых БД, с поддержкой шифрования базы
Олег
желатеьно NoSQL
Andrey
Увидел что электрон кладет просто весь проект в resources/app и запускается из .exe файлика. А можно как-то эти файлы из resources/app упаковать в бинарник или еще что-то сделать(кроме обфускации), чтобы их редактировать было сложнее?
Олег
Andrey
Andrey
просто я через него билдил и он как раз не шифрует похоже
Олег
Andrey
щас попробую
Олег
https://github.com/electron-userland/electron-builder
Andrey
инфа из инета пока не помогает
Andrey
хм, перезапустил комп и помогло)
Andrey
но чувствую снова меня настигнет проблема эта)
Andrey
на родительский это на node_modules
Vadim
Andrey
получилось, спасибо)
Олег
Andrey
аа, он просто пакует в asar
Олег
Vadim
Andrey
Andrey
аа, что сам асар шифруется
Andrey
ну винраром не открывается
Олег
Пруф плиз
он тебе не нужен
попробуй asar распаковать после electron-builder
Олег
для распаковки asar есть тулза, где-то рядом с репой електрона
Vadim
Олег
к тому же, в electron-builder есть функционал, чтобы можно было использовать что-то свое для шифрования
Vadim
Олег
Vadim
Это не дока, это репа. Дока вот electron.build
Anonymous
Как понимаю, в экосистеме электрона есть только два способа защитить код:
- конвертнуть жс файл в байт код
- писать на сях и засунуть в нативный модуль
Vadim
Anonymous
Олег
Vadim
2) почему? Наборот скорость же выше, так как нативный код
Нативные модули хороши для трудоёмких вычислений, а в основном нужны какие-то мелкие. Ведь вызов нативного модуля сам по себе затратный. Как итог, считает быстрее, но вот чтобы начал считать и получить ответ нужно много времени