前端小白最近使用antd pro腳手架開(kāi)發(fā)一個(gè)項(xiàng)目,開(kāi)始項(xiàng)目前對(duì)dva進(jìn)行了簡(jiǎn)單的了解过咬。由于我使用的是第二個(gè)版本壳猜,網(wǎng)上的介紹都是針對(duì)第一個(gè)版本的虹曙,因此熟悉項(xiàng)目的時(shí)候是一頭霧水谷誓,前期的開(kāi)發(fā)階段在構(gòu)建界面時(shí)是真的方便,封裝好的組件可以直接拿來(lái)用吨凑,但是要與后臺(tái)數(shù)據(jù)進(jìn)行交互時(shí)就遇到了難題捍歪。antd pro2.0使用了umi的知識(shí),對(duì)于我這個(gè)小白來(lái)說(shuō)簡(jiǎn)直就是天書(shū)了鸵钝。
項(xiàng)目中默認(rèn)會(huì)讀出mock的模擬的數(shù)據(jù)糙臼,網(wǎng)上的介紹都是對(duì)roadhog,webpackrc文件進(jìn)行修改恩商,2.0對(duì)這兩個(gè)文件進(jìn)行了修改变逃,整合到了config目錄下的config.js文件中,根據(jù)這個(gè)線索怠堪,將proxy代理服務(wù)器的地址直接放在config.js文件中就可以了揽乱。
這樣修改后能取到后臺(tái)接口的數(shù)據(jù),但是在瀏覽器調(diào)試工具Network中現(xiàn)實(shí)的路徑任然是默認(rèn)的localhost粟矿。不要慌凰棉,我因?yàn)檫@個(gè)問(wèn)題一直覺(jué)得是自己寫(xiě)錯(cuò)了,檢查了半天后發(fā)現(xiàn)陌粹,斷掉后臺(tái)的服務(wù)器會(huì)報(bào)服務(wù)器斷開(kāi)的錯(cuò)誤撒犀,描述如下:
[HPM] Error occurred while trying to proxy request /loginapi/login from localhost:8000 to(代理服務(wù)器的路徑,就不貼出來(lái)了)(ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors)
說(shuō)明在獲取信息的時(shí)候會(huì)轉(zhuǎn)到代理路徑中掏秩,之前的寫(xiě)法是正確的或舞。還有就是在package.json文件中有兩種啟動(dòng)的方式,直接使用第一種npm start即可蒙幻。我在之前一直用第二個(gè)no-mock映凳,發(fā)現(xiàn)沒(méi)什么變化,可能是我不懂這里的原理吧杆煞,哈哈哈哈魏宽。
這個(gè)問(wèn)題就這樣完美的解決了