Dj
привет, кто-нибудь знает как это сделать ? https://stackoverflow.com/questions/76319506/how-to-add-const-fs-requirefs-to-electron-in-renderer-without-including-n
Grigorii K.
Grigorii K.
Да и работа с fs всё равно асинхронная будет
Roman
ALΣX
есть гденибудь пример как подобную задачу, как у меня сделать ?
если с использованием ipc, так +/-:
1. nodeIntegration: false, contextIsolation: true (или смотреть какие там дефолт. значения у версии Electron)
2. в preload.js настроить contextBridge
```contextBridge.exposeInMainWorld(“ipcBridge”, {
invoke: async (channel, data) => {
return await ipcRenderer.invoke(channel, data);
},
});```
3. в рендерер процессе, где нужно, обратиться через мост к мейн процессу:
window.ipcBridge.invoke(‘fs:append-file’, {data: ‘some-data’, fileName: ‘text.txt’})
4. в мейн процессе отловить и обработать:
ipcMain.handle(‘fs:append-file’, async (event, data) => {
const result = await работа с fs;
return result;
})
Dj
если это - const fs = require('fs'); будет в файле preload.js, это нормально для безопасности ?
Dj
у preload.js, только одно название может быть ?
ALΣX
если это - const fs = require('fs'); будет в файле preload.js, это нормально для безопасности ?
Лучше отдельно в мейне, поскольку с некоторой версии Electron прелоад работает в режиме песочницы и, возможно, полноценно нода там работать не будет (сам еще не проверял), а вот в плане названия файла - чисто ваши предпочтения, но, как по мне, лучше соблюдать общепринятые правила, чтобы не возникло проблем с поддержкой кода в будущем (в том случае если сам прелоад используется по назначению).
Maksim
Maksim
Решил прикупить универсальный сертификат. Посмотрим как получится
Hov.
Dj
Dj
K098
Добрый день! Никто не сталкивался с таким моментом. При выполнении запроса на удаление записи в main процессе delete from table where id=? не удаляются связанные записи в таблицах по внешнему ключу. cascade ondelete указан. Тот же запрос, выполненный из sqlitestudio, выполняется правильно. Бд - sqlite3. Спасибо!
عبدالعزيز
Здравствуйте нужен человек кто добавит эффекты на vue js сайт
подробнее в лс
Maksim
K098
Видимо ключи нужно перепроверять
Да. Спасибо! В том то и дело из БД менеджера SQLiteStudio все работает без проблем, а запрос, выполненный из кода, нет. Решение нашел, перед выполнением запроса из main необходимо использовать выражение PRAGMA foreing_keys, которое определяет включена или выключена опция foreign keys. По умолчанию OFF. Итог, перед db.run.... дополняем строкой db.get('PRAGMA foreign_keys = ON');. Конечно же, это есть в справке на sqlite.org в разделе работы с внешними ключами. Очевидно же)
Siva
Hi all, im trying to set icon for my electron app for linux deb file. But it's using macos settings icon. Can some help me on this. Im using electron-builder to build my app.
Thank you
Alexey
Всем привет, кто нибудь сталкивался с такой проблемой, что приложение сворачивается в меньший чем настроенный размер?
При запуске, приложение разворачивается на весь экран, я его сворачиваю в окно, и это окно меньше чем минимальные размеры, которые я указал. Стоит начать тянуть за края, окно моментально становится минимально допустимого размера.
Alexey
Alexey
А и эта проблема встречается только на линуксе, на винде все нормально
Hov.
Unknown
Всем привет. Может кто знает. Есть человеческий способ использовать SQLite с шифрованием файла базы данных? На макоси работала прилага с шифрованием через @journeyapps/sqlitecipher пакет. На винде в билде выдает ошибку, что не может найти такой пакет. Пробовал использовать всякие доки, но тогда файл вообще не считается за файл БД и не читается. Проблема может быть в том, что я использую виртуалку винды? Напрягает меня, что пакеты для шифрования старые как мир
Grigorii K.
Unknown
Пока что хотя бы в магической строке
Unknown
А есть тогда вообще способ использовать базу типа Лайта и зашифровать именно файл?
Unknown
Я пишу диплом, никто, кроме студентов, этой прилагой пользоваться не будет
Grigorii K.
Unknown
Думаю, что их пыл остынет когда они увидят то что файл бд просит пароль и дальше лезть не будут
Алексей
всем привет, какая-то мистическая херня, получаю из бд время в мс и вставляю через Date (let date = new Date(result.Time[i]);) выдает дату от 20.01.1970, хотя в мс время сегодняшнего дня, было у кого-нибудь так же, причем этот же код на другом компе работает
🅰️nimeCoder
Unknown
кафедра микро- и наноэлектроники, думаю, что им не особо интересно лезть вглубь)
Hov.
Grigorii K.
Алексей
Да всем спасибо, там факап произоешел, не углядел что в секундах было
Алексей
с++ почемуто пишет в секундах в БД, а JS в милисекундах
🧤 And
привет всем, помогите плз, не могу найти в доке про такую фичу
при сохранении файла, сервер делает рестарт и перекидывает на окно самого приложения, как то можно отключить?
Roman
Ох, да. Смотри на события окна. Сейчас не вспомню какое. aftersave или reload
Гдето на их гите сообщества было
Alexey
Dj
можно ли сделать, чтобы приложение при запуске системы находилось в свернутом виде в этом месте и его можно было разворачивать через сочетание клавиш ?
Hov.
объедини и должно получится )
Joe
Hallo
Joe
Am new in this, I need help in creating an electron app
Unknown
Joe
꧁༺ Володя ༻꧂
Joe
꧁༺ Володя ༻꧂
An invoicing app
Should there be a payment option? more details, please
Sergey
and what kind of help you need
ALΣX
and what kind of help you need
Suppose, the help lies in developing an application instead and make it very fast, high-quality, and most importantly for free for him 😂
꧁༺ Володя ༻꧂
Sergey
Василий
꧁༺ Володя ༻꧂
Well, what are you, ran into a foreigner, can we help him? Just let him say what he wants
Joe
Мария
Добрый день!
Подскажите, как можно написать админу группы?
Joe
What is it, how is it supposed to work?
More like waveapps.com
To create invoices and saving them in pdf
Add new products and customers
Creating quotations and sending them to customers etc
Also creat reports for all these documents
꧁༺ Володя ༻꧂
Василий
Мария
Спасибо)
K098
Добрый день! Накидал приложение с использованием Electron React Boilerplate. В качестве БД использую локально sqlite3. При сарте из среды все работает. Из билда не видит файл базы данных. Как указать правильно путьк БД в main, чтобы при сборке приложение его видело? Или настройки какие есть для этого? При запуске экзешника не видит файл с БД. Спасибо!
Unknown
Unknown
В зависимости от сборщика надо указать по своему в конфигурации
K098
Unknown
Oleg
всем привет, не получается отловить сообщения через ipcRenderer
изнаачльно задача отрендерить логи из main процесса в ui render
пробую через бридж
contextBridge.exposeInMainWorld('electron', {
ipcRenderer: {
...ipcRenderer,
send: (channel, data) => ipcRenderer.send(channel, data),
on: (channel, func) => ipcRenderer.on(channel, (event, ...args) => func(args)),
// on: ipcRenderer.on.bind(ipcRenderer),
removeListener: ipcRenderer.removeListener.bind(ipcRenderer),
},
});
--------
export const testRun = () => {
console.log("testRun");
ipcRenderer.send('log', "Привет")
setInterval(() => {
const currentTime = new Date().toLocaleTimeString();
// console.log("Привет", currentTime);
ipcRenderer.send('log', "Привет", currentTime)
}, 1000);
}
в render использую react
useEffect(() => {
// event: IpcRendererEvent
electron.ipcRenderer.on('log', (e, ...args) => {
console.log('ipcRenderer', `${args}`);
// setLog([...logs, ...args])
});
}, []);
в обьекте window есть ipcRenderer но ничего не ловит
Oleg
чьл я делаю не так ?
Rewrite
всем привет, не получается отловить сообщения через ipcRenderer
изнаачльно задача отрендерить логи из main процесса в ui render
пробую через бридж
contextBridge.exposeInMainWorld('electron', {
ipcRenderer: {
...ipcRenderer,
send: (channel, data) => ipcRenderer.send(channel, data),
on: (channel, func) => ipcRenderer.on(channel, (event, ...args) => func(args)),
// on: ipcRenderer.on.bind(ipcRenderer),
removeListener: ipcRenderer.removeListener.bind(ipcRenderer),
},
});
--------
export const testRun = () => {
console.log("testRun");
ipcRenderer.send('log', "Привет")
setInterval(() => {
const currentTime = new Date().toLocaleTimeString();
// console.log("Привет", currentTime);
ipcRenderer.send('log', "Привет", currentTime)
}, 1000);
}
в render использую react
useEffect(() => {
// event: IpcRendererEvent
electron.ipcRenderer.on('log', (e, ...args) => {
console.log('ipcRenderer', `${args}`);
// setLog([...logs, ...args])
});
}, []);
в обьекте window есть ipcRenderer но ничего не ловит
В мейн процессе используй ipcMain, а не ipcRenderer
Andrey
ВСЕМ ПРИВЕТ. Товарищи как посмотреть стейт redux-toolkit в консоли electron
Den