dcloudio / dcloudio/uni-app

uniapp + pnpm + monorepo 导入自己的 自定义依赖的时候,hbuilderx 打印不正常,console.log 永远只打印一个参数

Open
#4,662 2 comments 0 reactions 0 assignees View on GitHub
Good!完整的提问 提供了复现方案
Dominant language
JavaScript
Stars
41.6k
Forks
3.7k
Avg merge
7h 6m
Merged PRs (30d)
6

Description

**问题描述**
[问题描述:尽可能简洁清晰地把问题描述清楚]
项目地址
https://github.com/kmq116/uniapp-monorepo-console-bug-report
项目使用了 pnpm + uniapp + monorepo,启动过程如下
![image](https://github.com/dcloudio/uni-app/assets/59247607/bbaf4ae7-4723-478a-ab72-ba63c43e4bb9)
外部的 packages 里有个包,定义了 fn1 fn2 两个函数,两个函数各打印了两个参数
![image](https://github.com/dcloudio/uni-app/assets/59247607/a82df1f6-9aa8-4429-82af-953811a51cef)
然后在 App.vue 中引入
![image](https://github.com/dcloudio/uni-app/assets/59247607/996bda9a-4f1d-4794-b68b-ceb25d5433df)
**期望**正常打印,但是结果只打印一个参数
![image](https://github.com/dcloudio/uni-app/assets/59247607/3778a39a-d889-4bbd-bc65-ab2bd8171c2a)
然后尝试在 App.vue 中定义一个 fn3,直接调用,结果正常
![image](https://github.com/dcloudio/uni-app/assets/59247607/74aed24c-39fd-4bea-b0f4-6384ac402027)

**复现步骤**
[复现问题的步骤]
![image](https://github.com/dcloudio/uni-app/assets/59247607/bbaf4ae7-4723-478a-ab72-ba63c43e4bb9)

[或者可以直接贴源代码]

**预期结果**
[使用简洁清晰的语言描述你希望生效的预期结果]
期望可以正常打印出 node_modules 中 app-handle-packet 包定义的函数的 log

**实际结果**
[这里请贴上你的报错截图或文字]
只能打印一个参数

**系统信息:**
- 发行平台: [如 微信小程序、H5平台、5+ App等]
- 操作系统 [如 iOS 12.1.2、Android 7.0]
- HBuilderX版本 [如使用HBuilderX,则需提供 HBuilderX 版本号]
- uni-app版本 [如使用Vue-cli创建/运行项目,则提供`npm run info`的运行结果]
- 设备信息 [如 iPhone8 Plus]

**补充信息**
[可选]
[根据你的分析,出现这个问题的原因可能在哪里?]
我分析是因为 pnpm 的 symlink 机制,导致 hbuilderx 编译的时候,无法解析其真实路径,这一点可以在上面 hbx 的打印中看到,打印一个参数的时候,后面是没有文件指示的
后来我去看 project\unpackage\dist\dev\app-plus\app-service.js 文件,这个可能是编译之后的压缩文件,怀疑是编译之后的文件 注释里边标记的路径 hbx 不能解析,比如解析项目之外的文件解析不到

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.