Tag: typeerror joi

当属性不存在时使用joi TypeErrorvalidation模式

我在使用joivalidation我的模式时遇到错误 所以我写了这个: const joiSchema = Joi.object().options({ abortEarly: false }).keys({ stream_name: Joi.string().required(), audio_bitrate: Joi.number().integer().min(80).required() … }); 并在我得到的方法 data.forEach((item) => { const result = Joi.validate({ stream_name: item.value.name, audio_bitrate: item.value.stats.media_info.streams[0].bitrate, }, joiSchema, (err, val) => { console.log(err); }); 但是,当stream不存在,我得到一个typeError audio_bitrate:item.value.stats.media_info.streams [0] .bitrate,^ TypeError:无法读取未定义的属性“stream” 我该如何处理? 如果比特率小于80,validation工作没有任何问题,但是当它不存在时,应用程序进入exception。