我在flutter中使用FutureBuilder,它从flutter缓存管理器库中调用getSingleFile()
。 (https://github.com/Baseflow/flutter_cache_manager)
我担心它可能返回null,因此futureBuilder AsyncSnapshot.hasData
始终为假。
为了解决这个问题,我考虑将其包装在一个函数中,该函数将检查getSingleFile()
的结果是否为空,如果返回的话,将返回File("")
。
像这样初始化File("")
是否安全?
答案 0 :(得分:0)
初始化具有空路径的文件将可能会引发错误,并且可能会对文件系统造成一些麻烦,因此,无论哪种方式,都不是很安全。
如果我可以提出其他建议,请不要选中snapshot.hasData
,而要选中snapshot.connectionState == ConnectionState.done
。将来完成时,无论返回什么值,都将返回true。