在flutter应用程序中将null传递给NumberFormat.simpleCurrency



我使用NumberFormat.simpleCurrency在我的flutter应用程序中格式化美元金额。如果trxns.contractPrice不为null,效果会很好。当它为空时,我会得到以下错误:对null调用了getter"isNegative"。接收方:空尝试调用:isNegative

以下是代码片段:

TextSpan(
text:
'nPrice: ${NumberFormat.simpleCurrency().format(trxns.contractPrice) ?? 'n/a'}nStatus: ${trxns.trxnStatus ?? 'n/a'}',
style: TextStyle(
fontWeight: FontWeight.w900,
color: Colors.blueGrey),
)

我找不到任何关于这个错误的信息。有人能帮我处理null吗?

首先检查traxns值是否为空,然后检查其属性或方法contractPrice是否为空。现在,您正在为其中一项获取null,并且NumberFormat中的format方法正在引发一个异常。曾经可能的例子是:

TextSpan(
text:'nPrice: ${trxns!.contractPrice == null ? 'n/a' : NumberFormat.simpleCurrency().format(trxns.contractPrice)}nStatus: ${trxns!.trxnStatus ?? 'n/a'}',
style: TextStyle(fontWeight: FontWeight.w900, color: Colors.blueGrey),
);

在格式化之前对contractPrice进行null检查

样品:

Text(
'nPrice: ${(contractPrice != null) ? NumberFormat.simpleCurrency().format(contractPrice) : 'n/a'}',
)

相关内容

  • 没有找到相关文章

最新更新