Electron初識之路

1.名詞解釋:

nodejs:nodejs至關於 jvm, vs等, 它是一個運行平臺, 只不過它運行的是javascript語言而已,就像vs能夠解釋、編譯、運行c++代碼同樣javascript

electron:是一個能使用傳統前端技術(Nodejs, Javascript, HTML, CSS)開發一個跨平臺桌面應用的框架。這裏所說的桌面應用指的是在Windows、OSX及Linux系統上運行的程序。能夠把它理解爲一個本地的、相似瀏覽器的殼子,用以展現js、html、css描述的界面php

初識 electron: https://blog.csdn.net/wang839305939/article/details/80741100css

2.環境搭建

安裝vscode
https://blog.csdn.net/HelloZEX/article/details/84029810
linux版本下載地址:
https://code.visualstudio.com/Download(deb包下載)
https://www.cnblogs.com/longyuan-z/p/7739864.html(deb包安裝方法)

安裝nodejs(注意版本)
https://blog.csdn.net/yt_php/article/details/90105880
https://blog.csdn.net/qq6759/article/details/97624102(Linux 下安裝,注意不要用 apt-gep install nodejs 安裝,不然環境變量修改後不起做用)
修改環境變量 「source /etc/profile」 在當前窗口起做用

ubuntu 下設置taobao鏡像和win下不一致,以下是 linux 下 .npmrc 文件的內容
registry=https://registry.npm.taobao.org/
disturl=https://registry.npm.taobao.org
electron_mirror=https://npm.taobao.org/mirrors/electron/html


安裝electron前端

能夠選擇版本和平臺:
npm install -g electron@5.0.11 -arch=ia32
npm install -g electron@5.0.11 -arch=x64
查看版本 electron -v electron -a
解決electron 經過npm下載慢的問題
https://www.jianshu.com/p/568db76a7b45

安裝Python(編譯c++擴展模塊用到)
https://www.liaoxuefeng.com/wiki/897692888725344/897692941155968java

3.NodeJS開發c++擴展模塊

注意點:gyp文件的結構錯誤不會報錯,要注意模塊之間的關係node

一個簡單的示例
http://blog.csdn.net/chenhaifeng2016/article/details/74939493

寫法介紹
https://hongchh.github.io/2018/NodeJS-Cpp-Addons%E5%9F%BA%E7%A1%80/

異步實現
https://hongchh.github.io/2018/NodeJS-Cpp-Addons%E4%B9%8BC-%E7%B1%BB%E5%AE%9E%E4%BE%8B%E5%8C%85%E8%A3%85%E4%B8%8E%E5%BC%82%E6%AD%A5%E6%93%8D%E4%BD%9C/

NodeJS - V8和JS的參數類型轉換
https://blog.csdn.net/youth0532/article/details/74721247

Gyp 語法規則
https://www.cnblogs.com/nanvann/p/3913880.htmllinux

用node-gyp手動編譯node的c++擴展模塊
https://blog.csdn.net/github_36487770/article/details/81052936c++

使用NodeJSc++擴展模塊調用DLL
https://blog.csdn.net/chenhaifeng2016/article/details/74989966git

Electron如何調用NodeJS擴展模塊
https://blog.csdn.net/chenhaifeng2016/article/details/74962611

Electron打包exe(windows)

https://segmentfault.com/a/1190000013924153?utm_source=tag-newest
https://segmentfault.com/a/1190000016695922?utm_source=tag-newest

https://www.electron.build/configuration/nsis(官網)

4.其餘學習鏈接:

electron官方指南,建立一個應用
https://github.com/electron/i18n/tree/master/content/zh-CN
nodejs入門
https://www.runoob.com/nodejs/nodejs-tutorial.html

nodejs中文網
http://nodejs.cn/api/addons.html

nodejs調用DLL(有兩種方法)
https://www.jianshu.com/p/7d33a21e43d3
https://blog.csdn.net/chenhaifeng2016/article/details/74989966

Node.js v8.x 中文文檔
https://www.nodeapp.cn/addons.html

node.js和JavaScript的關係
https://www.cnblogs.com/thinkam/p/8262743.html

5.問題及解決過程:

NODE_MOUDLE_VERSION不一致問題
https://blog.csdn.net/yurhzzu/article/details/99817323
https://www.cnblogs.com/mdorg/p/10417945.html(能夠修改abi的值?,該方法自測不行,待繼續瞭解)

ia32下:npm install -g electron@5.0.11 -arch=ia32  abi版本爲70npm install -g electron@4.0.1 -arch=ia32  abi版本爲64node-gyp rebuild  -target=10.1.0 abi 版本爲64(該方法在linux下的 /tmp 目錄下生效,其餘目錄貌似不生效,待繼續瞭解)

相關文章
相關標籤/搜索