Vadim
Ну нет
Vadim
У меня очень многие зависимости пересекаются
Oleh
Ну ладно, я просто такого необычного никогда наверное не делал
Kirill
Вот такой пример композиции выглядит окей https://github.com/dbilgili/minimal-electron-react-boilerplate
Правда он разваливается на каждом шагу. Видимо буду свой темплейт склеивать
Kirill
а вы не знаете, можно ли импортить сразу remote.app как app?
Oleh
как обычно
Kirill
а как обычно?
Oleh
import { remote: { app } } from 'electron'
Kirill
Интересно, не знал о таком, спасибо. Правда откуда-то у меня ts линтер ругается, видимо.
Oleh
trailing comma стоит в конфиге
Oleh
ее хочет, это норм
Oleh
и отступ
Kirill
а откуда это настраивать? Я напомню, я не из веба :)
Kirill
я себе просто пока для проекта eslint отключил чтобы не маячил.
Kirill
Хочу оттянуться и пописать говнокода
Oleh
а откуда это настраивать? Я напомню, я не из веба :)
Да ничего страшного, это в файле tsconfig.json должно быть
Oleh
https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
Kirill
У него, вероятно стандартный набор есть, потому что у меня такого файла нет, однако правила работают, как видно
Oleh
Погоди, я что-то пропустил может. https://github.com/dbilgili/minimal-electron-react-boilerplate В этом темплейте вообще нет TS, я думал это ты свой проект какой-то открыли который тебе дали
Kirill
Это будто что-то другое, потому что в шаблоне проекта нет даже упоминания о ts и все плагины я поотключал
Oleh
https://github.com/electron-react-boilerplate/electron-react-boilerplate А этот наверное
Oleh
https://github.com/electron-react-boilerplate/electron-react-boilerplate/blob/master/tsconfig.json
Oleh
Вот конфиг
Kirill
я взял minimal. Таки удалось его запустить. Неужели на него будут влиять ts линты даже при остутсвии ts в проекте впринципе?
Kirill
Странно, разве нет?
Oleh
Может быть у тебя в редакторе включена по умолчанию типизация по всем проектам?
Kirill
Даже удалил глобально пакеты typescript и по прежнему светит
Kirill
Спасает только "javascript.validate.enable": false в настройки проекта vscode
Oleh
Не, это неправильно
Kirill
Oleh
Хотя, может и правильно. Если ты меня это когда-то. Сейчас у себя посмотрю
Oleh
А да, все верно
Oleh
У меня отключено. Потому что каждый проект просто подключается отдельно
Kirill
Прогуглил, что можно делать так import { remote } from 'electron' const { app } = remote; Ну пойдет. Не хочу возиться в чем там проблема была. Хвостов то нет.
Oleh
Нет, все правильно. Ту настройку надо делать false
Kirill
Работают даже штуки, которые на том навороченом темплейте не работали
Kirill
Гыг
Oleh
Работают даже штуки, которые на том навороченом темплейте не работали
Так ты включил по всему редактору проверку наверное, того оно и заработало
Kirill
Не, я про fs и getAppPath
Kirill
через жопный темплейт всё зарастало внутряковыми ошибками, а он на то и бойлерлейт обзывается, что там системного когда столько...
Kirill
джаваскрипт обслуживает джаваскрипт чтобы джаваскрипт работал
uid
import { remote: { app } } from 'electron'
Это же немного невалидный синтаксис (можно посмотреть в стандарте или на mdn). Напоминает деструктуризацию, но здесь всё-таки только одноуровневые именные импорты (для облегчения статического анализа зависимостей, три-шейкинга).
Evgeniy
Ребят, а как делать обновление проги, но не целиком, а только фронтовых файлов?
Evgeniy
Автоапдейт
Oleh
Можешь просто задеплоить куда-то
Oleh
Фронт свой, если это возможно. И деплоить и все
Vadim
Можешь просто задеплоить куда-то
И грузить удаленный контент?
Oleh
Ну да :D
Vadim
По https?
Oleh
Ага
Vadim
Тогда нужно еще настроить кеширование
Vadim
Но доступ к фс лучше не давать)
Oleh
Но доступ к фс лучше не давать)
ну так отключать nodeIntegration
Oleh
И грузить только страницу
Evgeniy
Чё то кажется такой велосипед уже кто-то должен был собрать
Oleh
Просто мы не знаем какой там фронт, вдруг там куча завязки на электрон
Oleh
Чё то кажется такой велосипед уже кто-то должен был собрать
Мы так делаем, потому что это элементарно дешевле. Для десктопа только обертка написана, что бы показывать веб
Evgeniy
Ну У меня там только сообщения через мост в background process передаются
Oleh
Ну отлично, так и должно быть
Oleh
Тогда должно быть не сложно перенести. + будет веб версия :)
Evgeniy
У вас ручное кэширование какое-то или все хромиум делает? Прост в моем случае у них не всегда будет инет и, если че-то пиздякнется - будет очень плохо
Vadim
Хромиум все делает. Как обычно через ?
1) Заголовок кеширования 2) SW (only https)
Evgeniy
Спасибо, рил годные советы
Vadim
Да
Evgeniy
а зачем?
Vadim
Та и банально лишний раз не грузить
Evgeniy
ааа, ну я юзаю localStorage и indexedDB для этого
Vadim
Ну JS/CSS/PNG/SVG тоже туда?)
Evgeniy
ваще думал хромиум это закеширует)
Vadim
1) Заголовок кеширования 2) SW (only https)
Если стоит заголовок. Это 2 варианта)
Evgeniy
ааа, теперь понял. Спасибо
Electron.js releases
v10.0.0-beta.9 https://github.com/electron/electron/releases/tag/v10.0.0-beta.9 v10.0.0-beta.9
Electron.js releases
v11.0.0-nightly.20200706 https://github.com/electron/electron/releases/tag/v11.0.0-nightly.20200706 v11.0.0-nightly.20200706