摘要:之前做過一點(diǎn)前端的小項(xiàng)目所以前端還算熟練因?yàn)樽罱跍?zhǔn)備所以想能不能寫一個(gè)背單詞軟件正好這學(xué)期有個(gè)開發(fā)課,就用來當(dāng)大作業(yè)了前端后端如何在下調(diào)試當(dāng)然是代理啦在之前兩個(gè)項(xiàng)目中為了不用代理強(qiáng)行在后端啟用了事實(shí)證明這是個(gè)愚蠢的決定因?yàn)橥耆贿m合做后端
之前做過一點(diǎn)前端的小項(xiàng)目所以前端還算熟練
因?yàn)樽罱跍?zhǔn)備GRE所以想能不能寫一個(gè)背單詞軟件
正好這學(xué)期有個(gè)Android開發(fā)課,就用來當(dāng)大作業(yè)了
前端: webpack+react+redux
后端: sinatra+grape(API)+datamapper
當(dāng)然是代理啦!
在之前兩個(gè)項(xiàng)目中為了不用代理強(qiáng)行在后端啟用了nodejs
事實(shí)證明這是個(gè)愚蠢的決定
因?yàn)閚odejs完全不適合做后端,express的結(jié)構(gòu)倒是易懂,但異步編程模式很容易產(chǎn)生難以預(yù)料的錯誤
比方說: 如果你傳一個(gè)回調(diào)函數(shù)用來接受數(shù)據(jù)庫的數(shù)據(jù),如果這個(gè)函數(shù)拋出異常,express不會返回錯誤信息,整個(gè)后端會崩潰,因?yàn)檎嬲\(yùn)行這個(gè)函數(shù)的時(shí)候已經(jīng)脫離express控制的范圍了,而這一點(diǎn)很難注意到
另外sequelize就是一坨翔,命令行工具竟然和庫不兼容,還沒有任何提示
我選擇Ruby
如果希望dev server和后端同時(shí)開啟關(guān)閉的話,可以考慮concurrently
文件路徑在引用其他js/css/html文件的時(shí)候不能用"/xxx.js",因?yàn)閏ordova并不是開了一個(gè)本地服務(wù)器,cordova的webpack使用的是file://協(xié)議,也就是說路徑應(yīng)該長這樣:"./xxx.js",在使用create-react-app創(chuàng)建的項(xiàng)目中,可以寫一份新的paths.js和配置文件解決這個(gè)問題,更改%PUBLIC_PATH%就可以
圖片路徑非常詭異的是圖片并不能按照上述做法訪問到
以至于我一度以為cordova不能加載本地文件
不過事實(shí)證明其實(shí)只是需要寫完整路徑而已
如果你的圖片路徑是www/image.png的話,應(yīng)該用
cordova.file.applicationDirectory+"www/image.png"
可能需要安裝插件
調(diào)試因?yàn)槲易约旱氖謾C(jī)是iOS的,只能用Android模擬器調(diào)試
網(wǎng)上給出的做法大部分是基于adb 的,查了很久沒看到怎么直接看控制臺輸出
直到我看到這個(gè): chrome://inspect/#devices
Chrome提供的調(diào)試工具,可以直接看到Cordova里Webview的控制臺
可惜不支持Redux和React的dev tool
而且更新界面的時(shí)候好TM閃!
默認(rèn)情況下AJAX是跨域的糾結(jié)了很久如果禁止跨域的話就需要在cordova里弄個(gè)代理代理到我的服務(wù)器上(就像webpack那樣)
不過這個(gè)問題是不存在的
window.speechSynthesis不能用,結(jié)合下一條導(dǎo)致我查了4小時(shí)BUG
React Redux的Reducer不報(bào)錯?!如果一個(gè)reducer崩潰的話控制臺不會有任何輸出,就是單純的沒反應(yīng)了
我打了一堆console.log才確認(rèn)這個(gè)問題
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/84740.html
閱讀 2567·2021-09-22 15:25
閱讀 2978·2021-09-14 18:03
閱讀 1228·2021-09-09 09:33
閱讀 1712·2021-09-07 09:59
閱讀 2938·2021-07-29 13:50
閱讀 1509·2019-08-30 15:44
閱讀 1723·2019-08-29 16:22
閱讀 1295·2019-08-29 12:49