Skip to content
This repository has been archived by the owner on Sep 27, 2024. It is now read-only.

mac下总是报错,是路径写法问题 #5

Open
snowtree-ok opened this issue Jun 9, 2020 · 6 comments
Open

mac下总是报错,是路径写法问题 #5

snowtree-ok opened this issue Jun 9, 2020 · 6 comments

Comments

@snowtree-ok
Copy link

老大,更新一版吧。路径都用 "/", mac用户很痛苦啊

@devin87
Copy link
Owner

devin87 commented Jun 12, 2020

这个不过是个node后端演示,你自己改下就行了撒

@hubzy
Copy link

hubzy commented Jul 21, 2020

啊我也遇到了,
Error: ENOENT: no such file or directory, mkdir 'upload/pro/assets/商品/标签' at Object.mkdirSync (fs.js:914:3) at inner (/Users/zy/Downloads/Jlakes/lib/Q.js:1837:41) at mkdirSync (/Users/zy/Downloads/Jlakes/lib/Q.js:1846:23) at Object.mkdir (/Users/zy/Downloads/Jlakes/lib/Q.js:1851:34) at /Users/zy/Downloads/Jlakes/node.js:113:32 at /Users/zy/Downloads/Jlakes/node.js:81:17 at zalgoSafe (/Users/zy/Downloads/Jlakes/node_modules/dezalgo/dezalgo.js:20:10) at f (/Users/zy/Downloads/Jlakes/node_modules/once/once.js:25:25) at IncomingForm.<anonymous> (/Users/zy/Downloads/Jlakes/node_modules/formidable/src/Formidable.js:170:9) at IncomingForm.emit (events.js:315:20) { errno: -2, syscall: 'mkdir', code: 'ENOENT', path: 'upload/pro/assets/商品/标签' }

@devin87
Copy link
Owner

devin87 commented Jul 21, 2020

最近比较忙,改天有空了更新下后端。

@hubzy
Copy link

hubzy commented Jul 22, 2020

最近比较忙,改天有空了更新下一级。
`
//Q.js 1815行做了一下替换就上传没事了 “\”替换成了“/”
//不知道会不会有其它问题,目前上传是没问题了(◐‿◑)

//规格化路径
function normalize_path(_path) {
    var pathname = path.normalize(_path);
    return pathname != "/" && pathname.endsWith("/") ? pathname.slice(0, -1) : pathname;
    //----    \\  替换 /
}

//创建目录
function mkdirSync(url, mode, callback) {       
    if (url == "..") return callback && callback();

    url = normalize_path(url);
    var arr = url.split("/");
    //----    \\  替换 /
    //处理 ./aaa
    if (arr[0] === ".") arr.shift();

    //处理 ../ddd/d
    if (arr[0] == "..") arr.splice(0, 2, arr[0] + "/" + arr[1]);
    //----    \\  替换 /
    mode = mode || 493;  //0755

    function inner(dir) {
        //不存在就创建一个
        if (!fs.existsSync(dir)) fs.mkdirSync(dir, mode);

        if (arr.length) {
            inner(dir + "/" + arr.shift());
                    //----    \\  替换 /
        } else {
            callback && callback();
        }
    }

    arr.length && inner(arr.shift());
}

`

@devin87
Copy link
Owner

devin87 commented Jul 22, 2020

更新了,看看正常了没有

@hubzy
Copy link

hubzy commented Jul 23, 2020

更新了,看看正常了没有

我试了一下文件夹上传
还是不行,好像还严重了~,之前是传了一半某些文件夹无法创建就断了,现在是直接断了。
不知道是不是我的问题,
不过上一版我改了斜杠的没事

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants