專案使用的是react+mobx,簡要如下:
元件**:
componentdidmount()componentwillreceiveprops(nextprops)
async handlecard() = this
.props;
await getname();
console.log(name, "name");
console.log(
this.props.name, "name");
}
mobx檔案**:
@actioninitzeroonecarddata = async () =>;
gettime() );
}
問題:在mobx中使用非同步請求後更改了name的值,但是在頁面元件中:
componentwillreceiveprops 的生命週期中已經更新了該值,但是在 componentdidmount 生命週期的非同步await後面
console.log(name, "name"); //沒有更新 還是原來的值
console.log(this.props.name, "name"); //已經更新了,是非同步請求之後的值
原因:name 取自 await 之前的 this.props 的值,然後才執行的 await非同步請求,所以請求回來,原來的 props 是沒有變化的;
而第二行: this.props.name 取自 await 非同步請求之後的 props ,因此可以獲取到最新的props;
componentwillreceiveprops 該生命週期是乙隻有最新的props
記錄一次oracle使用記錄
使用oracle資料庫的專案到我這邊,需要修改,咱雖然 學過 oracle,但那畢竟已經過去了。哈哈。使用database configuration assistant 建立資料庫,建立快完的時候,說我沒有監聽啥的,然後 通過 net manager 建立了,qizhong1 其中選中的那個就是建...
一次非同步處理
首發於 一次非同步處理 今天回憶了一下在做專案的時候遇到的乙個小問題。就是當兩個介面請求的資料相互沒有影響時,而你卻需要這兩個介面的所有資料,你會怎麼做呢?當我處理這個的時候想到的第乙個方案是這樣的。由於兩個介面相互沒有影響,我使用了乙個中間量進行判斷。是這樣寫的。var flag 2 請求資料1 ...
關於 的一次使用記錄
使用場景 專案裡面在做乙個請求時候發現,不同的請求,有些請求會跳轉到 spring mvc的自定義方法中,有些卻不進去。自定義的方法 class com.zhuanche.car.web.resolver.adminbaseformargumentresolver adminbaseformargu...