Sha*_*eer 0 javascript typescript
我有以下 JS 代码,我根据 API 的响应密钥显示不同的状态。有没有更好的方法来优化此代码,以便我不必使用 IF 检查每种情况,以防状态数量增加
\nif (data.shippingStatus) {\n let shippingStatus = data.shippingStatus.toString();\n if (shippingStatus === "AWAITING_SHIPMENT") {\n shippingStatus = "Awaiting Shipment";\n } else if (shippingStatus === "SHIPPED") {\n shippingStatus = "Shipped";\n } else if (shippingStatus === "DELIVERED") {\n shippingStatus = "Delivered";\n } else if (shippingStatus === "CANCELLED") {\n shippingStatus = "Cancelled";\n }\n resData.push(setData(data.shippingStatus ? shippingStatus : ""));\n}\nRun Code Online (Sandbox Code Playgroud)\n
尝试对象映射器:
const statusMapper: {[key:string]: string} = {
AWAITING_SHIPMENT: "Awaiting Shipment",
SHIPPED: "Shipped",
DELIVERED: "Delivered",
CANCELLED: "Cancelled"
};
if (data.shippingStatus) {
let shippingStatus = data.shippingStatus.toString();
resData.push(setData(data.shippingStatus ? statusMapper[shippingStatus] : ""));
}
Run Code Online (Sandbox Code Playgroud)
编辑:向映射器添加类型
| 归档时间: |
|
| 查看次数: |
80 次 |
| 最近记录: |