Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在每个事件之后创建目录_Javascript_Node.js_File - Fatal编程技术网

Javascript 在每个事件之后创建目录

Javascript 在每个事件之后创建目录,javascript,node.js,file,Javascript,Node.js,File,我试图在每次按钮点击事件后创建一个目录。 这只工作到10个目录 然后我得到了这个错误: 我能做些什么来解决这个问题?我想创建n个目录 谢谢你的帮助。 马丘问题在于排序 你会有目录 _一, _二, _九, 加上第10个字母,按字母顺序或词法顺序 _一, _十, _二, _九, 最后一个文件夹是\u9。。。9 + 1 = 10 ... 那已经存在了 您可以将代码更改为 } else { var valInt = Math.max.apply(null, fileV

我试图在每次按钮点击事件后创建一个目录。 这只工作到10个目录

然后我得到了这个错误:

我能做些什么来解决这个问题?我想创建n个目录

谢谢你的帮助。 马丘

问题在于排序

你会有目录

  • _一,
  • _二,
  • _九,
加上第10个字母,按字母顺序或词法顺序

  • _一,
  • _十,
  • _二,
  • _九,
最后一个文件夹是
\u9
。。。9 + 1 = 10 ... 那已经存在了

您可以将代码更改为

    } else {
        var valInt = Math.max.apply(null, fileVal.map(function(entry) {
            return parseInt(entry.split("_").pop(), 10);
        })) + 1;
        fs.mkdirSync(pathDirectory + '_' + valInt);
    }

这会将Math.max应用于将fileVal条目映射到每个fileVal条目最后一部分的parseInt的结果,这些条目由“quot”分割。

ok,现在应该是正确的了!啊,好吧,那我该把它分类了!我会试试这个。如果你对它排序,你会有
\u1
\u10
\u2
<代码>\u 9。。。所以不,排序是问题的根源-按创建时间排序将在99%的时间内有效,未排序也应在99%的时间内有效。。。最好的方法是循环查找最高值OK!任何关于如何做到这一点的建议。“文件”是一个数组。我添加了一个建议
Error: EEXIST: file already exists, mkdir 'user/public/uploadGallery/5612cfea107f9e0f356b3dee_10'
app.post('/createDirectories', function(req, res) {

    var id = '5612cfea107f9e0f356b3dee';

  var pathDirectory = __dirname + '/public/uploadGallery/' + id;

        fs.readdir(__dirname + '/public/uploadGallery/', function (err, files) { 

        var countVal = files.filter(junk.not).length;
        var fileVal = files.filter(junk.not);
                    if(countVal == '0'){ 

                        fs.mkdirSync(pathDirectory + '_' + 1);  
                        console.log("Directory created: " + pathDirectory + '_' + 1);           
                    }else{

                        var lastElem = fileVal[fileVal.length-1];
                        var lastElemSplitValue = lastElem.split("_")[1];
                        var valInt = parseInt(lastElemSplitValue, 10) +1;
                        fs.mkdirSync(pathDirectory + '_' + valInt);
        }
        });
});
    } else {
        var valInt = Math.max.apply(null, fileVal.map(function(entry) {
            return parseInt(entry.split("_").pop(), 10);
        })) + 1;
        fs.mkdirSync(pathDirectory + '_' + valInt);
    }