如果对象未定义,则map未定义

时间:2017-07-22 08:47:31

标签: javascript reactjs ecmascript-6 lodash

我在jsx中有这个

{get(applicant, 'user.name').map((obj,i) => <span>{obj}</span>}

如果user.name不存在,我的应用程序将崩溃,为什么get不解决问题?这是lodash得到的。

如果我使用applicant.user.name.map,我的应用程序将有机会崩溃。

1 个答案:

答案 0 :(得分:1)

如果路径不存在,Lodash _.get会返回undefined。结果undefined.map抛出错误。你应该传递[]作为第三个参数,在这种情况下,如果path不存在_.get返回[][].map不会抛出错误:

{get(applicant, 'user.name', []).map((obj,i) => <span>{obj}</span>}