{"id":23378070,"url":"https://github.com/powerdos/serialport_electron_start","last_synced_at":"2025-04-10T19:52:33.990Z","repository":{"id":126316084,"uuid":"115407271","full_name":"PowerDos/serialport_electron_start","owner":"PowerDos","description":"基于electron的串口工具桌面应用小实例(踩坑)","archived":false,"fork":false,"pushed_at":"2018-06-21T09:54:46.000Z","size":6139,"stargazers_count":50,"open_issues_count":2,"forks_count":12,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-24T17:51:26.953Z","etag":null,"topics":["electron","node-serialport","serial-ports"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PowerDos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-12-26T09:24:26.000Z","updated_at":"2024-02-05T08:15:07.000Z","dependencies_parsed_at":"2023-06-16T06:45:49.042Z","dependency_job_id":null,"html_url":"https://github.com/PowerDos/serialport_electron_start","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerDos%2Fserialport_electron_start","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerDos%2Fserialport_electron_start/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerDos%2Fserialport_electron_start/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PowerDos%2Fserialport_electron_start/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PowerDos","download_url":"https://codeload.github.com/PowerDos/serialport_electron_start/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248284091,"owners_count":21077992,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["electron","node-serialport","serial-ports"],"created_at":"2024-12-21T18:34:31.916Z","updated_at":"2025-04-10T19:52:33.982Z","avatar_url":"https://github.com/PowerDos.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# serialport_electron_start\n\u003e 这是一个基于electron的串口工具桌面应用，因为我在网上走了很多坑，都不成功，终于找到对的方法，编译成功了，这里讲下我的编译成功的方法。希望能够帮到大家\n\n\u003e **完整demo在demo目录中，包括编译好的node_modules，所以有点大**\n\n# 实现过程\n## 装备工作\n### 安装python 2.7\n\u003e 这里需要安装python 2.7的环境，记得是2.7，3的话是不行的。这里就不再展开python的安装过程，执行下载安装即可。\n\n### 安装electron\n\u003e 对于可以翻墙的同学用这个\n\n`npm i electron -g`\n\n\u003e 由于下载过慢，所以我采用淘宝的镜像镜像安装cnpm，大家可以自行安装下cnpm，这里就不展开解释了 **下面的操作都采用cnpm**\n\n`cnpm i electron -g`\n\n### 安装electron-prebuilt\n\n`cnpm install -g electron-prebuilt`\n\n## 开始\n\n### 安装官方的例子\n\u003e 官方文档的例子我就不在这里展开解释了，可以查看官方文档  [https://electron.org.cn/doc/tutorial/quick-start.html](https://electron.org.cn/doc/tutorial/quick-start.html \"https://electron.org.cn/doc/tutorial/quick-start.html\")\n\n\n\u003e 下载demo\n\n`git clone https://github.com/electron/electron-quick-start.git`\n\n\u003e 安装模块\n\n`cnpm install`\n\n\u003e 安装serialport\n\n`cnpm install --save serialport`\n\n\u003e 安装electron-rebuild, 因为serialport是根据系统环境编译的，当我们安装时，我们编译的成的是系统环境的serialport，所以我们需要重新编译成eletron的环境，所以我们需要electron-rebuild\n\n`cnpm install --save-dev electron-rebuild`\n\n\u003e 重新编译, 因为我当前版本的electron是1.7.10的，所以我们重新把模块编译成适应1.7.10的, **这里记得要根据你的electron版本编译**\n\n`./node_modules/.bin/electron-rebuild -v 1.7.10`\n\n## demo\n\u003e 在index.html写我们的demo\n\n```html\n\u003c!DOCTYPE html\u003e\n\u003chtml\u003e\n  \u003chead\u003e\n    \u003cmeta charset=\"UTF-8\"\u003e\n    \u003ctitle\u003eHello World!\u003c/title\u003e\n  \u003c/head\u003e\n  \u003cbody\u003e\n    \u003ch1\u003eHello World!\u003c/h1\u003e\n    \u003c!-- All of the Node.js APIs are available in this renderer process. --\u003e\n    We are using Node.js \u003cscript\u003edocument.write(process.versions.node)\u003c/script\u003e,\n    Chromium \u003cscript\u003edocument.write(process.versions.chrome)\u003c/script\u003e,\n    and Electron \u003cscript\u003edocument.write(process.versions.electron)\u003c/script\u003e.\n\n    \u003cscript\u003e\n      // You can also require other files to run in this process\n      require('./renderer.js')\n      var serialport = require('serialport');\n\n      serialport.list(function(err, ports) {\n        console.log(ports);\n      });\n    \u003c/script\u003e\n  \u003c/body\u003e\n\u003c/html\u003e\n```\n\n## 运行效果\n![](https://i.imgur.com/PlgtDdS.png)\n\n## 写了完整的小demo\n\u003e 地址: [https://github.com/PowerDos/electron-serialport](https://github.com/PowerDos/electron-serialport)\n\n\n\u003e 效果\n\n![](https://i.imgur.com/19mcrCM.png)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpowerdos%2Fserialport_electron_start","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpowerdos%2Fserialport_electron_start","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpowerdos%2Fserialport_electron_start/lists"}