Electron整合React使用搭建开发环境的步骤详解


Posted in Javascript onJune 07, 2020

简介

用于构建用户界面的 JavaScript 库

步骤

首先创建React

npx create-react-app doc

进入到doc项目

cd doc

安装electron

npm install electron --save-dev

安装依赖

判断是否为生产环境

cnpm install electron-is-dev --save-dev

在项目根目录创建main.js

const { app ,BrowserWindow } = require('electron')
const isDev = require('electron-is-dev')
let mainWindow;

app.on('ready', () => {
 mainWindow = new BrowserWindow({
  width: 1024,
  height: 680,
  webPreferences:{
   nodeIntegration: true,
  }
 })
 const urlLocation = isDev ? 'http://localhost:3000' : 'dummyurl'
 mainWindow.loadURL(urlLocation);
})

修改json配置文件

在json文件中添加下面两行

Electron整合React使用搭建开发环境的步骤详解

首先运行npm start,然后再开启一个shell运行npm run dev

Electron整合React使用搭建开发环境的步骤详解

遇到的问题

1、需要多次运行,十分的麻烦

2、每次会自动打开浏览器

3、react运行的速度慢,electron加载不到,需要手动刷新

完善

安装依赖

同时执行多个命令https://www.npmjs.com/package/concurrently

cnpm install concurrently --save-dev

等待资源加载完成https://www.npmjs.com/package/wait-on

cnpm install wait-on --save-dev

环境变量https://www.npmjs.com/package/cross-env

cnpm install cross-env --save-dev

完善后的json

Electron整合React使用搭建开发环境的步骤详解

"dev": "concurrently \" wait-on http://localhost:3000 && electron . \" \" cross-env BROWSER=none npm start \" "

配置完成之后直接在终端执行npm run dev,之后会弹出我们的界面

总结

到此这篇关于Electron整合React使用搭建开发环境的步骤详解的文章就介绍到这了,更多相关Electron整合React搭建环境内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
juqery 学习之五 文档处理 插入
Feb 11 Javascript
jquery构造器的实现代码小结
May 16 Javascript
js使用函数绑定技术改变事件处理程序的作用域
Dec 26 Javascript
使用javascript提交form表单方法汇总
Jun 25 Javascript
详解Javascript继承的实现
Mar 25 Javascript
详解XMLHttpRequest(一)同步请求和异步请求
Sep 14 Javascript
如何处理JSON中的特殊字符
Nov 30 Javascript
深入理解Javascript中的valueOf与toString
Jan 04 Javascript
小程序实现层叠卡片滑动效果
Aug 26 Javascript
Vue实现点击按钮复制文本内容的例子
Nov 09 Javascript
JavaScript中的执行环境和作用域链
Sep 04 Javascript
vue 插槽简介及使用示例
Nov 19 Vue.js
vue路由权限校验功能的实现代码
Jun 07 #Javascript
Vue使用自定义指令实现拖拽行为实例分析
Jun 06 #Javascript
JS原型对象操作实例分析
Jun 06 #Javascript
JS中的继承操作实例总结
Jun 06 #Javascript
ES6 async、await的基本使用方法示例
Jun 06 #Javascript
JS 数组和对象的深拷贝操作示例
Jun 06 #Javascript
ES6 Generator基本使用方法示例
Jun 06 #Javascript
You might like
一个多文件上传的例子(原创)
2006/10/09 PHP
PHP脚本的10个技巧(7)
2006/10/09 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
PHP+MySQL实现的简单投票系统实例
2016/02/24 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
Smarty缓存机制实例详解【三种缓存方式】
2019/07/20 PHP
对laravel的session获取与存取方法详解
2019/10/08 PHP
js cookies实现简单统计访问次数
2009/11/24 Javascript
如何让easyui gridview 宽度自适应窗口改变及fitColumns应用
2013/01/25 Javascript
AngularJS学习笔记之TodoMVC的分析
2015/02/22 Javascript
javascript实现捕捉键盘上按下的键
2015/05/05 Javascript
js实现可旋转的立方体模型
2016/10/16 Javascript
JS获得多个同name 的input输入框的值的实现方法
2017/01/09 Javascript
AngularJs表单校验功能实例代码
2017/02/09 Javascript
AngularJS ng-repeat指令及Ajax的应用实例分析
2017/07/06 Javascript
基于构造函数的五种继承方法小结
2017/07/27 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
VSCode 添加自定义注释的方法(附带红色警戒经典注释风格)
2020/08/27 Javascript
[01:53]DOTA2超级联赛专访Zhou 五年职业青春成长
2013/05/29 DOTA
python的dict,set,list,tuple应用详解
2014/07/24 Python
Python实现设置windows桌面壁纸代码分享
2015/03/28 Python
python多进程和多线程究竟谁更快(详解)
2017/05/29 Python
python编程羊车门问题代码示例
2017/10/25 Python
pandas中Timestamp类用法详解
2017/12/11 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
详解python 注释、变量、类型
2018/08/10 Python
Python多图片合并PDF的方法
2019/01/03 Python
使用celery和Django处理异步任务的流程分析
2020/02/19 Python
浅谈利用缓存来优化HTML5 Canvas程序的性能
2015/05/12 HTML / CSS
华润集团网上药店:健一网
2016/09/19 全球购物
Noon埃及:埃及在线购物
2019/11/26 全球购物
医院护士专业个人的求职信
2013/12/09 职场文书
文明宿舍获奖感言
2014/02/07 职场文书
计生工作先进事迹
2014/08/15 职场文书
三好生演讲稿
2014/09/12 职场文书