NativeScript / NativeScript/nativescript-cli
[Bundle workflow] VSCode call stack window contains a lot of garbage debugging linked source
还没有人认领这个 Issue。
- 主要语言
- JavaScript
- 星标
- 1.1k
- 派生
- 204
- 平均合并
- 1 天 9 小时
- 30 天内合并 PR
- 8
描述
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- CLI: rc
- Cross-platform modules: rc
- Android Runtime: rc
- iOS Runtime: rc
Describe the bug
Debugging linked tns-core-modules source in VSCode with bundle workflow currently requires us to do it from the top NativeScript folder -- this causes a problem where some of the call stack window entries contain the full filepath thus becoming extremely long (and hiding the essential debugging information). To fix this we have to make the call stack window twice as wide (thus limiting the file listing space)
Screenshot demonstrating the issue (default call stack window width practically shows no meaningful information):

Screenshot demonstrating the workaround:

To Reproduce
git clone git@github.com:NativeScript/NativeScript.gitcd NativeScripttns create bottom-nav-test --template tns-template-blank-tscd bottom-nav-testtns migrate- Open NativeScript folder in VSCode
- Replace the contents of bottom-nav-test/app-root.xml with:
<BottomNavigation>
<TabStrip>
<TabStripItem title="First"></TabStripItem>
<TabStripItem title="Second"></TabStripItem>
</TabStrip>
<TabContentItem>
<GridLayout>
<Label text="First View" />
</GridLayout>
</TabContentItem>
<TabContentItem>
<GridLayout>
<Label text="Second View" />
</GridLayout>
</TabContentItem>
</BottomNavigation>
- Place a breakpoint in the
OnLoaded()method in tns-core-modules/ui/bottom-navigation/bottom-navigation.android.ts and adebugger;statement at the beginning of the file - Configure NativeScript debugging and add the following debug configuration in launch.json:
{
"name": "bottom-nav | Launch on Android",
"type": "nativescript",
"request": "launch",
"platform": "android",
"appRoot": "${workspaceRoot}/bottom-nav-test",
"sourceMaps": true,
"stopOnEntry": true,
"watch": true
},
- Debug using the newly added configuration
- Breakpoint in
OnLoaded()is hit -- see the call stack window
Expected behavior
Call stack window should not display full filepath but only meaningful debug information.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
使用文档化的 NativeScript CLI 步骤、bundle workflow 启动配置以及 tns-core-modules/ui/bottom-navigation/bottom-navigation.android.ts 中的断点重现该问题。检查 VSCode 配置周围的 bundle-workflow 调试和 source-map 处理;完成的标准是 call stack 显示有意义的条目,且不会显示不必要地冗长的完整路径。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- android, javascript, typescript, vscode
- 领域
- cli, developer-experience, mobile-dev, tooling
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 38/100