我的electron教程系列

electron教程(一): electron的安装和项目的创建

electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范

electron教程(番外篇二): 使用TypeScript版本的electron, VSCode调试TypeScript, TS版本的ESLint

electron教程(二): http服务器, ws服务器, 子进程管理

electron教程(三): 使用ffi-napi引入C++的dll

electron教程(四): 使用electron-builder或electron-packager将项目打包为可执行桌面程序(.exe)

 

引言

 

这一篇将介绍:

1. 如何部署开发环境VSCode.

2. 如何使用vscode调试启动项目.

3. 如何使用ESLint插件来检查代码, 代码风格规范使用Google JavaScript Style Guide(官方英文第三方中文翻译).

4. VSCode插件推荐.

 

安装VSCode

 

通过VSCode官网下载, 可以安装在任意盘符下任意位置.

安装完成后, 就可以使用VSCode打开并编辑main.js了.

你还可以使用VSCode打开并编辑.html.json等文件, 甚至是.txt.md等文件.

 

使用VSCode调试启动项目

 

1. 部署node.js+electron环境

按步骤完成electron教程(一): electron的安装和项目的创建所介绍的内容.

 

2. 创建launch配置文件

在项目根目录, 建立.vscode目录, 在该文件夹内创建launch.json文件, 内容如下:

{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Electron JS", // 配置方案名字, VSCode左下角可以切换配置方案
      "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
      "program": "${workspaceFolder}/src/main.js", // electron入口
      "protocol": "inspector" // 默认的协议是legacy,该协议导致不进入断点
    },
  ]
}

 

3. 将你的项目复制进VSCode

现在, 启动一个VSCode.

然后, 将整个项目文件夹blogs, 拖动到VSCode的主窗口中, 可以看到, 鼠标位置显示出复制, 如下图所示:

松开鼠标, 复制完成, VSCode界面左边出现blogs目录, 可以直接打开该目录下任意文件:

 

4. 调试!

main.js中打一个断点, 然后按下F5, 就会进入断点调试, 一路执行下去, 最终依然会出现electron程序界面.

 

安装ESLint代码检查工具, Google JavaScript Style Guide

 

ESLint是一个语法规则和编码规范的检查工具, 它有两个功能:

功能一:

由于JavaScript是动态弱类型语言, 编译器无法进行代码检查(比如类型错误), 以往都需要执行JavaScript代码才能发现语法错误或其他错误. 而ESLint, 可以在我们写代码的时候就提示出语法错误, 对开发人员非常有帮助.

功能二:

ESLint可以导入编码规范, 强制代码符合某种规范, 常见的有: Google开源的JavaScript代码风格规范Google JavaScript Style Guide, 由很多前端开发人员总结的eslint-config-standardAirbnb开源的的规范.

你可以在上述开源规范上, 做一些自己喜欢的修改, 如果你愿意, 甚至可以自己写一套规范.

 

1. 安装ESLint

在项目根目录, 执行指令:

npm install --save eslint eslint-config-google

 

2. 修改配置文件

在项目根目录创建.eslintrc.js文件,将下列内容复制到文件中:

module.exports = {
      "extends": ["google"],
      "parserOptions": {
          "ecmaVersion": 2018
      },
      "env": {
          "es6": true
      },
      rules: {
          "linebreak-style": ["error","windows"],
      }
};

上面的配置文件, 主要有以下内容:

1. extends指定了使用google编码规范.

2. parserOptions指定ECMAScript支持的版本,2018指ES2018

3. env为环境变量, 可以预设好的其他环境的全局变量,如brower环境变量, node环境变量, es6环境变量, mocha环境变量等.

4. rules可以添加一些自己的规则, 这些规则会覆盖掉extends中指定的规范. 在这里我指定了linebreak-style使用windows风格换行符CRLF, 而不是Google Style默认的Unix风格换行符LF.

 

3. 安装VSCode的ESlint插件

在VSCode左侧的Extensions中搜索ESlint,安装ESlint, 如下图:

 

4. 重启VSCode生效

 

VSCode插件推荐

 

1. vscode-icon

整个插件可以改变不同格式文件的图标.

如下图所示, .js.html.json等文件, 使用了不同的图标:

在VSCode左侧的Extensions中搜索vscode-icons ,安装vscode-icons, 如下图:

electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范的更多相关文章

  1. electron教程(番外篇二): 使用TypeScript版本的electron, VSCode调试TypeScript, TS版本的ESLint

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...

  2. 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV

    这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...

  3. C++雾中风景番外篇3:GDB与Valgrind ,调试代码内存的工具

    写 C++的同学想必有太多和内存打交道的血泪经验了,常常被 C++的内存问题搅的焦头烂额.(写 core 的经验了)有很多同学一见到 core 就两眼一抹黑,不知所措了.笔者 入"坑&quo ...

  4. 【番外篇】Rust环境搭建+基础开发入门+Rust与.NET6、C++的基础运算性能比较

    前言:突然想打算把Rust作为将来自己主要的副编程语言.当然,主语言还是C#,毕竟.NET平台这么强大,写起来就是爽.缘起:之前打算一些新的产品或者新的要开发的东西,由于没有历史包袱,就想重新选型一下 ...

  5. 《30天自制操作系统》学习笔记--番外篇之Mac环境下的工具介绍

    这几天又有点不务正业了,书也没看,一直在搞这个破环境,尝试各种做法,网上各种垃圾信息,浪费了很多时间,说的基本都是废话,不过还是找到了一些,赶紧写下来,不然这个过几天又忘了 首先是环境,我用的是Max ...

  6. electron教程(三): 使用ffi-napi引入C++的dll

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(二): http服务器, ws服务器, 进程管理 electron教程(三): 使 ...

  7. electron教程(一): electron的安装和项目的创建

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(二): http服务器, ws服务器, 进程管理 electron教程(三): 使 ...

  8. electron教程(二): http服务器, ws服务器, 进程管理

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(二): http服务器, ws服务器, 进程管理 electron教程(三): 使 ...

  9. electron教程(四): 使用electron-builder或electron-packager将项目打包为可执行桌面程序(.exe)

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(二): http服务器, ws服务器, 子进程管理 electron教程(三): ...

随机推荐

  1. H3C 反向查询

  2. MobaXterm 使用中间服务器

    经常需要连接服务器,但是有时候服务器需要经过一层中间服务器才可以连接,所以本文告诉大家如何使用MobaXterm 配置中间服务器,进行ssh连接 在本文的开始,本地转发服务器已经弄好,本文不会告诉大家 ...

  3. linux 搭建jenkins

    一.什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集 ...

  4. 利用Aspose.cells 将查询出的数据导出为excel,并在浏览器中下载。

    正题前的唠叨 本人是才出来工作不久的小白菜一颗,技术很一般,总是会有遇到一些很简单的问题却不知道怎么做,这些问题可能是之前解决过的.发现这个问题,想着提升一下自己的技术水平,将一些学的新的‘好’东西记 ...

  5. Spring Boot 定时+多线程执行

    Spring Boot 定时任务有多种实现方式,我在一个微型项目中通过注解方式执行定时任务. 具体执行的任务,通过多线程方式执行,单线程执行需要1小时的任务,多线程下5分钟就完成了. 执行效率提升10 ...

  6. Linux忘记root密码后如何在grub界面中以单用户模式进入系统并重置密码的方法

    本文将介绍在Linux系统中忘记root用户密码的情况下,如何在gurb界面进入单用户模式并重置root用户密码.在单用户模式下,用户不需要输入任何密码即可进入系统并可以修改密码.实验步骤如下: 1. ...

  7. SpringBoot入门简易教程

    使用SpringBoot来开发一个简单的restful api网关功能,目标:实现对SpringBoot的简单入门. 1. 创建SpringBoot项目 可以通过spring官网(https://st ...

  8. Redis事务、持久化、发布订阅

    一.Redis事物 1. 概念 Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作:事务中的所有命令都会序列化.按顺序地执行.事务在执行的过程中,不会被其他 ...

  9. Jmeter之BeanShell变量使用讲解

    一.在测试过程中经常会遇到一些业务逻辑处理需要,单纯的线程设置不能满足,这时候就要使用BeanShell编写一定的脚本 前置处理器:BeanShell PreProcessor,主要接口请求前做一些参 ...

  10. CF1277A. Happy Birthday, Polycarp! 题解 枚举/数位DP

    题目链接:http://codeforces.com/contest/1277/problem/A 题目大意: 求区间 \([1,n]\) 范围内有多少只包含一个数字的数. 比如:\(1,77,777 ...