收藏
回答

如何解决 wx.env. USER_DATA_PATH在window 7上使用错误问题?

在小程序中通过 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 个回答

  • Cjiang
    Cjiang
    2021-10-18

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

    2021-10-18
    有用
    回复 1
    • 浮世绘、
      浮世绘、
      2021-10-18
      具体机型:window
      SDKVersion:  2.19.2
      version: 7.0.9
      代码片段:https://developers.weixin.qq.com/s/ugiYS9mn7FuZ

      已经定位问题了,我理解应该是个兼容问题
      2021-10-18
      回复
登录 后发表内容