如何解决 wx.env. USER_DATA_PATH在window 7上使用错误问题?
发布于 3 年前 作者 yinjuan 365 次浏览 来自 官方Issues

在小程序中通过 __FileSystem __使用 __wx.env.USER_DATA_PATH __创建文件夹,在线上监控中发现很多如下报错:

access:fail no such file or directory, access wxfile://usr/xxx/

mkdir:fail no such file or directory “wxfile://usr/xxx/”

根据监控数据显示,所有报错来源全来自 window 7用户 (猜测是使用PC微信进入的)

代码如下所示:

const PATH = `${wx.env.USER_DATA_PATH}/xxx/`;
fs.access({
    path: PATH,
    success: () => resolve(), // 文件存在,直接返回
    fail: (e) => fs.mkdir({
        dirPath: PATH,
        success: () => resolve(), // 创建成功
        fail: (err) => {
            if (err.errMsg.indexOf('already exists') > -1) {
                // 理论上经过access后不可能进入这里,执行mkdir一定文件不存在,这里进行兜底
                // 如果提示文件已存在,则认为正常
                new Error(e.errMsg);
                resolve();
            } else {
                reject(new Error(e.errMsg + '\n' + err.errMsg));
            }
        },
    })
});

请问是否USER_DATA_PATH在window7上有兼容问题或者是有其他写法可以解决这个问题?

1 回复

你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),并详细描述下复现流程。

回到顶部