一日心血來潮,屁顛屁顛的去研究electron痰腮。
打開百度而芥,搜索 electron。
找到官網(wǎng)膀值,按照官方文檔一步一步構(gòu)建項目
粗略掃一眼棍丐,簡直不要太簡單仍劈!
然I芴睢4嘌汀9媪场!
當(dāng)?shù)桨惭belectron秘案。
npm install --save-dev electron
可能是程序員自身光環(huán)吧砰苍,研究什么,什么報錯Z甯摺W肌!
npm安裝執(zhí)行 run "node install.js"
時候報錯赤惊!
然后各種百度吼旧,解決方案,窮出不窮未舟。
嘗試yarn
安裝, 修改.npmrc
添加 ELECTRON_MIRROR
(我的npm好像壞了一樣黍少,并不起作用),使用cnpm
下載......
過程之艱辛处面,讓人聽者流淚,見者傷心菩掏!
可;杲恰!然并卵智绸!
打擾了野揪!我要學(xué)習(xí)《Electron 從入門到放棄》了!
可是轉(zhuǎn)念一想,門都沒摸進(jìn)去瞧栗,放個啥門子的棄喲斯稳!繼續(xù)折騰吖!
自己動手迹恐,豐衣足食挣惰。網(wǎng)上沒有解決辦法,那就自己琢磨一下殴边。
這廝既然報錯操作不了下載的包憎茂,那在下姑且就先懷疑是下包地址有問題!(用cnpm
是用國內(nèi)鏡像锤岸,下載不了竖幔,應(yīng)該地址是有問題)!找到它的下載地址先是偷!
進(jìn)到項目目錄 node_modules\electron\install.js 找到如下代碼
// downloads if not cached
downloadArtifact({
version,
...//省略拳氢,太多辣募逞。
}).then((zipPath) => extractFile(zipPath)).catch((err) => onerror(err))
查看它的引用 (VSCode 按住CTRL)
可以看到downloadArtifact
在 @electron/get/dist/cjs/index里
打開 @electron/get/dist/cjs/index.js,找到 function downloadArtifact(_artifactDetails){...}
將url輸出出來,牛鬼神蛇馋评,快快現(xiàn)身放接。
console.log(url)
終端定位到項目目錄下的 node_modules\electron
里, 運(yùn)行 node install.js
在輸出里看包地址在哪栗恩!
PS H:\codes\testElectron\node_modules\electron> node install.js
https://github.com/electron/electron/releases/download/v7.0.0/electron-v7.0.0-win32-x64.zip
(有沒有大神告訴我透乾,這廝為什么不走國內(nèi)鏡像?磕秤?)
emmm... github 繼續(xù)修改鏡像地址吧乳乌。
解決方案:
修改項目目錄下的 node_modules\electron\install.js
downloadArtifact({
version,
artifactName: 'electron',
force: process.env.force_no_cache === 'true',
cacheRoot: process.env.electron_config_cache,
platform: process.env.npm_config_platform || process.platform,
arch: process.env.npm_config_arch || process.arch, //結(jié)尾別忘了加逗號!
//添加如下代碼市咆,
mirrorOptions:{
mirror: 'https://npm.taobao.org/mirrors/electron/',
customDir: version
}
}).then((zipPath) => extractFile(zipPath)).catch((err) => onerror(err))
ps : customDir
在downloadArtifact
拼接下載地址的時候汉操,它會自動在版本號前加上字符v
從而來下載github的鏡像
github
https://github.com/electron/electron/releases/download/v7.0.0/electron-v7.0.0-win32-x64.zip
可這樣,就會導(dǎo)致淘寶鏡像下載出錯蒙兰!
淘寶的鏡像中目錄中版本目錄磷瘤,是不帶v
的
https://npm.taobao.org/mirrors/electron/7.0.0
/electron-v7.0.0
-win32-x64.zip
再次用終端打開 項目目錄下的 node_modules\electron
運(yùn)行 node install.js
PS H:\codes\testElectron\node_modules\electron> node install.js
https://npm.taobao.org/mirrors/electron/7.0.0/electron-v7.0.0-win32-x64.zip
PS H:\codes\testElectron\node_modules\electron>
解決!K驯洹采缚!
終端再次項目目錄運(yùn)行項目
PS H:\codes\testElectron> cnpm start
> testelectron@1.0.0 start H:\codes\testElectron
> electron .
希望能對你有點幫助!D铀扳抽!