作为一个新手,最近在看《node.js实战》这本书,书中有一段实现一个照片上传功能的例子,我自己也敲了下来,由于书年代久远,node.js的发展太快了,很多东西都与现在不同了,在实现多张图片上传的功能时使用了multer中间件( multer),然后使用fs.rename这个API调换文件的位置,然后奇怪的事情出现了。先上一段代码:
由于一直报错,我就挨个排查bug,最后锁定在fs.rename的这个部分,于是打印了两次files[i].filename,发现第一次没有问题,第二次报错,不明白这是怎么回事?作用域吗?
最后的解决办法是用一个参数把files[i].filename保存起来,就OK了!
然而我还是不明白为什么,求大神解答一下!不胜感激!