Electron with Vue.js Quick Overview
Electron with Vue.js (Single Page Application)
As we already know that electron.js provide us lots of more easier to develop cross platform Desktop application. Moreover, the combination of electron and vue is incredibly amazing. It help us do lots more than we ever think, but the process of integrating two of them is such a little bit irritating especially for the newbie like me. Fortunately, I just found a very useful library that help us in doing the electron and vue integration. It's called electron-vue. In this article I will show you how to get started with the electron-vue and you can also find a sample project in Github provided at the end of this article.
Environment Setup
To use electron-vue, you have to install NodeJS in you local machine. Go ahead download and install NodeJS from their official website. Once you successfully download and install NodeJS, Open up your terminal and type:
node --version
If there is a node version message show up, that's mean you have NodeJS installed on your machine. Now, It's time to install vue-cli using npm:
npm install -g vue-cli
After you install vue-cli, you are ready to create your first sample project of electron-vue. To create new project, run this following command:
vue init simulatedgreg/electron-vue <your-project-name>
This command will automatically scaffold the boilerplate project from electron-vue's Github repository and setup everything for you to get started.
After the process is done It will bring you all the needed file as shown in the picture above. Let's pay attention to the src folder. This is where the electron-vue wrap the electron.js in.
Electron Process Quick Overview
In Electron we use the Chromium architecture. What do I mean by that? Chromium run each tab in a separate process, so If one tab run into fatal error, It doesn't bring the entire application down. By that mean, If there is something strange happen to the app, the main process has the capability of blocking the renderer process easily. That's why there are two processes running synchronously inside electron.
Main Process : is responsible for creating and managing Browser Window. It can also do any other thing like register global shortcut, create native menus and dialogs, respond to auto-update events, and more.
Renderer Process : responsible for running the user interface in the application. This is where the Vue come in.
Vue Components
Vue app consists of many components. Each component contain template, style and script. electron-vue is using the single file style of VueJS. As a developer, we always want to separate those files. So there is a way to do so by creating two more file for css and script and wrap them in a single folder.
and then add this following line to the components vue file:
<script src="./LandingPage.js"></script>
<style src="./LandingPage.css"></style>
Don't forget to change the route file as well. In route -> index.js find this line:
component: require('@/components/LandingPage').default
and replace with this line:
component: require('@/components/LandingPage/LandingPage').default
Now you have a well structure component vue template in your project.
If you are new to Vue.JS, I recommend you to check out the vue official website for the references and sample code. I also provide sample code for this article. You can clone from my Github repo here.
Author And Source
この問題について(Electron with Vue.js Quick Overview), 我々は、より多くの情報をここで見つけました https://qiita.com/phanithken/items/9bc9422fedcd2941f175著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .