2***@qq.com
2***@qq.com
  • 发布:2024-12-04 10:36
  • 更新:2024-12-04 13:20
  • 阅读:94

通过 vue-cli 创建 uni-app 项目 经常出现进入到第一页报错退出问题

分类:uni-app

使用Vue3/Vite版
npx degit dcloudio/uni-preset-vue#vite my-vue3-project

运行npm run dev:h5后
进入首页偶尔会报下面的错误,另一位开发也是有时候会报,出现后就算重新运行项目后进入首页也会报错。

排查了好久也找不出问题,就算把首页改成空白页也是会报错


node:events:495  
      throw er; // Unhandled 'error' event  
      ^  

Error: EISDIR: illegal operation on a directory, read  
Emitted 'error' event on ReadStream instance at:  
    at emitErrorNT (node:internal/streams/destroy:151:8)  
    at emitErrorCloseNT (node:internal/streams/destroy:116:3)  
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {  
  errno: -4068,  
  code: 'EISDIR',  
  syscall: 'read'  
}  

Node.js v18.20.0

这是目前项目使用到的依赖

{  
  "name": "uni-preset-vue",  
  "version": "0.0.0",  
  "scripts": {  
    "dev:app": "uni -p app",  
    "dev:app-android": "uni -p app-android",  
    "dev:app-ios": "uni -p app-ios",  
    "dev:app-harmony": "uni -p app-harmony",  
    "dev:custom": "uni -p",  
    "dev:h5": "uni",  
    "dev:h5:ssr": "uni --ssr",  
    "dev:mp-alipay": "uni -p mp-alipay",  
    "dev:mp-baidu": "uni -p mp-baidu",  
    "dev:mp-jd": "uni -p mp-jd",  
    "dev:mp-kuaishou": "uni -p mp-kuaishou",  
    "dev:mp-lark": "uni -p mp-lark",  
    "dev:mp-qq": "uni -p mp-qq",  
    "dev:mp-toutiao": "uni -p mp-toutiao",  
    "dev:mp-weixin": "uni -p mp-weixin",  
    "dev:mp-xhs": "uni -p mp-xhs",  
    "dev:quickapp-webview": "uni -p quickapp-webview",  
    "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei",  
    "dev:quickapp-webview-union": "uni -p quickapp-webview-union",  
    "build:app": "uni build -p app",  
    "build:app-android": "uni build -p app-android",  
    "build:app-ios": "uni build -p app-ios",  
    "build:app-harmony": "uni build -p app-harmony",  
    "build:custom": "uni build -p",  
    "build:h5": "uni build",  
    "build:h5:ssr": "uni build --ssr",  
    "build:mp-alipay": "uni build -p mp-alipay",  
    "build:mp-baidu": "uni build -p mp-baidu",  
    "build:mp-jd": "uni build -p mp-jd",  
    "build:mp-kuaishou": "uni build -p mp-kuaishou",  
    "build:mp-lark": "uni build -p mp-lark",  
    "build:mp-qq": "uni build -p mp-qq",  
    "build:mp-toutiao": "uni build -p mp-toutiao",  
    "build:mp-weixin": "uni build -p mp-weixin",  
    "build:mp-xhs": "uni build -p mp-xhs",  
    "build:quickapp-webview": "uni build -p quickapp-webview",  
    "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei",  
    "build:quickapp-webview-union": "uni build -p quickapp-webview-union"  
  },  
  "dependencies": {  
    "@dcloudio/uni-app": "3.0.0-4020920240930001",  
    "@dcloudio/uni-app-harmony": "3.0.0-4020920240930001",  
    "@dcloudio/uni-app-plus": "3.0.0-4020920240930001",  
    "@dcloudio/uni-components": "3.0.0-4020920240930001",  
    "@dcloudio/uni-h5": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-alipay": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-baidu": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-jd": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-kuaishou": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-lark": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-qq": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-toutiao": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-weixin": "3.0.0-4020920240930001",  
    "@dcloudio/uni-mp-xhs": "3.0.0-4020920240930001",  
    "@dcloudio/uni-quickapp-webview": "3.0.0-4020920240930001",  
    "axios": "^1.7.7",  
    "crypto-js": "^4.2.0",  
    "decimal.js": "^10.4.3",  
    "deep-pick-omit": "^1.2.1",  
    "destr": "^2.0.3",  
    "lodash": "^4.17.21",  
    "moment": "^2.30.1",  
    "pinia": "2.0.36",  
    "pinia-plugin-persistedstate": "^4.1.2",  
    "sass": "1.77.6",  
    "vue": "^3.5.12",  
    "vue-i18n": "^9.14.1"  
  },  
  "devDependencies": {  
    "@dcloudio/types": "^3.4.14",  
    "@dcloudio/uni-automator": "3.0.0-4020920240930001",  
    "@dcloudio/uni-cli-shared": "3.0.0-4020920240930001",  
    "@dcloudio/uni-stacktracey": "3.0.0-4020920240930001",  
    "@dcloudio/vite-plugin-uni": "3.0.0-4020920240930001",  
    "@vue/runtime-core": "^3.5.12",  
    "vite": "5.2.8"  
  }  
}

这是pages.json里面定义的,我删减了一部分配置,保留了一些主要页面和配置

{  
    "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages  
        {  
            "path": "pages/index/index",  
            "style": {  
                "navigationBarTitleText": "首页",  
                "navigationStyle": "custom",  
                "enablePullDownRefresh":true  
            }  
        },  
        {  
            "path": "pages/index/login",  
            "style": {  
                "navigationBarTitleText": "登录页面",  
                "navigationStyle": "custom"  
            }  
        },  
        {  
            "path" : "pages/application/index",  
            "style" :   
            {  
                "navigationBarTitleText" : "应用中心",  
                "navigationStyle": "custom"  
            }  
        },  
        {  
            "path" : "pages/project/index",  
            "style" :   
            {  
                "navigationBarTitleText" : "项目首页",  
                "navigationStyle": "custom",  
                "enablePullDownRefresh":true  
            }  
        },  

        {  
            "path" : "pages/msg/index",  
            "style" :   
            {  
                "navigationBarTitleText" : "消息中心",  
                "navigationStyle": "custom"  
            }  
        },  
        {  
            "path" : "pages/me/index",  
            "style" :   
            {  
                "navigationBarTitleText" : "我的",  
                "navigationStyle": "custom"  
            }  
        },  
        /**其他页面**/  
        {  
            "path": "pages/index/forgotpwd",  
            "style": {  
                "navigationBarTitleText": "忘记密码",  
                "navigationStyle": "custom"  
            }  
        },  
        {  
            "path" : "pages/msg/list",  
            "style" :   
            {  
                "navigationBarTitleText" : "任务列表",  
                "navigationStyle": "custom",  
                "enablePullDownRefresh":true  
            }  
        },  

    ],  
    "tabBar": {  
        "color": "#999999",  
        "selectedColor": "#007BFE",  
        "borderStyle": "white",  
        "backgroundColor": "#ffffff",  
        "redDotColor":"#FE0000",  
        "list": [{  
            "pagePath": "pages/index/index",  
            "iconPath": "static/image/tabbar/home.png",  
            "selectedIconPath": "static/image/tabbar/home2.png",  
            "text": "首页"  
        }, {  
            "pagePath": "pages/application/index",  
            "iconPath": "static/image/tabbar/app.png",  
            "selectedIconPath": "static/image/tabbar/app2.png",  
            "text": "应用"  
        },  
        {  
            "pagePath": "pages/project/index",  
            "iconPath": "static/image/tabbar/project.png",  
            "selectedIconPath": "static/image/tabbar/project2.png",  
            "text": "项目"  
        },  
        {  
            "pagePath": "pages/msg/index",  
            "iconPath": "static/image/tabbar/msg.png",  
            "selectedIconPath": "static/image/tabbar/msg2.png",  
            "text": "消息"  
        },  
        {  
            "pagePath": "pages/me/index",  
            "iconPath": "static/image/tabbar/me.png",  
            "selectedIconPath": "static/image/tabbar/me2.png",  
            "text": "我的"  
        }  
        ]  
    },  
    "globalStyle": {  
        "navigationBarTextStyle": "black",  
        "navigationBarTitleText": "uni-app",  
        "navigationBarBackgroundColor": "#F8F8F8",  
        "backgroundColor": "#F8F8F8"  
    },  
    "uniIdRouter": {},  
    "easycom": {  
        "autoscan": true,  
        "custom": {  
            // uni-ui 规则如下配置  
            "^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"  
        }  
    }  
}  
2024-12-04 10:36 负责人:无 分享
已邀请:
DCloud_UNI_yuhe

DCloud_UNI_yuhe

不应该是依赖的问题,应该是你代码某个地方写法的问题,我这试着是没问题的。

  • 2***@qq.com (作者)

    找到原因了,感谢。是image组件的路径拼接的时候因为数据返回是空的导致指向了文件夹导致的报错

    2024-12-04 16:32

要回复问题请先登录注册