async/await では、await が受け取る必要があるのは Promise オブジェクトなので、次のように書きます:
リーリー リーリーこれで問題はありません。AreaSvr.getList は Promise オブジェクトを返します。次に、AreaSvr.getList をカプセル化し、キャッシュを追加します。
リーリー リーリーここでは、キャッシュ用に AddressSvr.getList の外側に Promise の層をカプセル化していますが、このとき await は、AddressSvr.getAddressList 関数によって返される Promise を受け取りますが、このときに返される Promise は無効であり、エラーが直接キャッチされる可能性があります。どこに間違ったことを書いたか教えてください。
PHP中文网2017-05-16 13:40:44
上記のキャッシュがあるかどうかは areaList[i].children.length !== 0 を使用しましたが、この時点ではまだ子が存在せず、未定義であるため、エラーが報告されます。これは async/await の使い方の問題ではなく、私のミスです。