首页 > 解决方案 > 如何访问 Promise 对象中的属性

问题描述

我有一个方法'getAssetByIdAsync(assetId)'

export const getAssetByIdAsync = (assetId) => {
    const asset = assets.find((a) => a.id === assetId);

    if (!asset) {
        throw new Error("Asset not found" + assetId);
    }

    return new Promise((resolve) => setTimeout(() => resolve(asset), 500));
};

这个方法返回一个 Promise。

我创建了一个方法'renderMasterThumb(masterAssetId)'

const renderMasterThumb = async (masterAssetId) => {
    const masterAsset = await getAssetByIdAsync(masterAssetId);
    const path = masterAsset.path;
    return path;
  };

我希望这个方法会返回 masterAsset 的 .path 属性,但结果证明该方法返回一个 Promise 对象。

如果我通过 console.log(path) 打印,我会得到正确的值:'bart.jpg'

如何使 renderMasterThumb 方法返回图像路径而不是 Promise 对象。

感谢您的帮助,

安东尼

标签: javascriptreactjs

解决方案


推荐阅读