- PVSM.RU - https://www.pvsm.ru -

Как заставить Vue.js и Electron работать вместе

Как заставить Vue.js и Electron работать вместе - 1

Введение

На волне популярности (надеюсь, что они популярны) Vue.js [1] и Electron [2], возникает резонный вопрос, а как заставить их работать вместе. В этом небольшом руководстве я расскажу, как быстро установить и настроить шаблон для разработки приложений на Electron и Vue.js. И так приступим.

Что нам понадобится

  • yarn [3] — пакетный менеджер, аналог npm [4]. Я выбрал yarn, потому что мне просто нравится этот инструмент, однако вы можете использовать и npm. Как установить yarn здеся [5], а npm тута [6];
  • vue-cli [7] — консольная утилита, которая позволяет быстро инициализировать проекты на Vue.js, добавив поддержку webpack [8];
  • electron-vue [9] — шаблон, который мы и будем использовать.

Установка

Запустим наш терминал и введём команду, чтобы установить vue-cli:

yarn global add vue-cli

Аналогично для npm:

npm install vue-cli -g

Затем создадим проект:

vue init simulatedgreg/electron-vue <имя_папки>

Вместо <имя_папки> пшием название папки, в которую хотим поместить все файлы для работы.

Во время установки нам будут заданы следующие вопросы:

  • ? Application name: имя проекта.
  • ? Project description: описание проекта.
  • ? Select which Vue plugins to install: выбираем плагин, который хотим установить;
  • ? Use linting with ESLint: будете ли вы использовать ESLint [10] (линтер или дичь, которая будет проверять ваш JS код на соответсвие стайл-гайду).
  • ? Setup up unit testing with Karma + Mocha: установить тесты Karma [11] и Mocha [12].
  • ? Setup up end-to-end testing with Spectron + Mocha: установить Spectron [13] и Mocha для end-to-end тестирования.
  • ? What build tool would you like to use: какой сборщик изволите electron-builder [14] или electron-packager [15]; я советую electron-builder, так как с ним проблем меньше.
  • ? author: ваше имя.

После того, как ответили на вопросы, переходим в нашу директорию и устанавливаем необходимые пакеты:

cd <имя_папки>
yarn

Для npm:

cd <имя_папки>
npm install

И, чтобы проверить работоспособность всего установленного, запустим приложение:

yarn dev

Или:

npm run dev

И мы должны увидеть следующее:

Как заставить Vue.js и Electron работать вместе - 2

А что дальше то?

Дальше разберём основные папки, которые есть в нашей рабочей директории:

  • .electron-vue: все конфиги для работы webpack;
  • build: когда вы собирёте ваш проект, то здесь вы найдёте все файлы, которые получились после сборки (установщик, распакованная версия); также здесь есть папка icons, в которой необходимо поместить иконки приложения для разных ОС;
  • dist: в режиме разработки из этой папки запускается приложение, поэтому её трогать не имеет смысла;
  • src: весь исходный код вашего приложения:
    • main: файлы для работы с Main process [16] в Electron;
    • assets: картинки и пр. медиа;
    • components: место хранения всех Vue-компонентов;
    • router: файлы для vue-router [17];
    • store: файлы для vuex [18];

Сборка

Чтобы собрать ваше приложение, введите:

yarn build

Или:

npm run build

Результат появится в папке build. Настройки для electron-builder находятся в package.json в разделе build.

Заключение

Теперь у вас есть отличное рабочее окружение, и если вы хотите узнать больше, то вот официальная документация: тут [19].

Автор: Федин Дмитрий

Источник [20]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/280014

Ссылки в тексте:

[1] Vue.js: https://vuejs.org

[2] Electron: https://electronjs.org

[3] yarn: https://yarnpkg.com/en/

[4] npm: https://www.npmjs.com

[5] здеся: https://yarnpkg.com/en/docs/install#windows-stable

[6] тута: https://www.npmjs.com/get-npm

[7] vue-cli: https://github.com/vuejs/vue-cli

[8] webpack: https://webpack.js.org

[9] electron-vue: https://github.com/SimulatedGREG/electron-vue

[10] ESLint: https://eslint.org

[11] Karma: https://karma-runner.github.io/2.0/index.html

[12] Mocha: https://mochajs.org

[13] Spectron: https://electronjs.org/spectron

[14] electron-builder: https://github.com/electron-userland/electron-builder

[15] electron-packager: https://github.com/electron-userland/electron-packager

[16] Main process: https://electronjs.org/docs/tutorial/application-architecture

[17] vue-router: https://router.vuejs.org/en/

[18] vuex: https://vuex.vuejs.org/en/intro.html

[19] тут: https://simulatedgreg.gitbooks.io/electron-vue/content/en/

[20] Источник: https://habr.com/post/358432/?utm_source=habrahabr&utm_medium=rss&utm_campaign=358432