React-根据API值有条件地显示某些价格



在我们的API中,我们有许多"经销商名称"值"CATERPILLAR金融服务公司;以及其他一切。

我试着做两件事:

  1. 如果任何其他产品的经销商名称为CATERPILLAR FINANCIAL SERVICES CORPORATION,则将转换率设置为1.32
  2. 所有其他产品的转化率为0.74

已经设置了费率定价的逻辑:

export function formatPrice(
price,
lang,
inclCurTxt?: boolean,
currency?: string
) {
let formattedPrice = price;
const usaRate = 0.74;
const currencyText = inclCurTxt ? " USD" : "";
if (currency != null && currency === "US") {
//USD
formattedPrice =
accounting.formatMoney(Number(price) * usaRate, "$", 0) + currencyText;
} else {
//CAD
formattedPrice = accounting.formatMoney(price, "$", 0) + currencyText;
}
return formattedPrice;

我已经编写了一个可导出的getConversionRate函数,它通过了我在顶部解释的逻辑:

export function getConversionRate() {
let usaRate = 0.74;
if (isEnvironmentBFE()) {
const catName = "CATERPILLAR FINANCIAL SERVICES CORPORATION";
// If it contains Cat Financial products, make US rate 1.32.
if (detailsHtml.dealerId === catName) {
usaRate = 1.32;
}
}
}

我已经将getConversionRate函数导入到文件中,并在页面上的产品渲染细节中放置了一些代码,但它不起作用:

<div className="price-wrap">
<img
className="flagimg"
src={Constants.IMAGES.FLAG_CA}
alt="CDN $"/>
<span className="data_price_cad">{getConversionRate(detailsHtml.itemPriceCA)}</span>
</div>
<div className="price-wrap">
<img
className="flagimg"
src={Constants.IMAGES.FLAG_US}
alt="US $"/>
<span className="data_price_usd">{getConversionRate(detailsHtml.itemPriceUS)}</span></div>

我是否错误地实现了getConversionRate?

看起来您调用函数不正确?getConversionRate没有被定义为接受任何参数,而您正在将一些参数传递到呈现的代码中。可能是代码需要修复与函数参数相关的问题。

最新更新