使用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"
}
}
}
2***@qq.com (作者)
找到原因了,感谢。是image组件的路径拼接的时候因为数据返回是空的导致指向了文件夹导致的报错
2024-12-04 16:32