[Bundle workflow] Breakpoint in linked source not hit in VSCode on lightweight app initial load
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- android, javascript, typescript, vscode
調査の方向性
列挙されている NativeScript コマンドを使用して軽量な Android アプリを再現し、その後 tns-core-modules/ui/bottom-navigation/bottom-navigation.android.ts と launch.json の stopOnEntry 設定から始めます。初回起動と source-map デバッグのフローを追跡して、OnLoaded() がスキップされる理由を、比較対象として debugger の回避策を使用しながら特定します。初回のアプリ読み込み中に debugger; を追加せず breakpoint に到達できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
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
Describe the bug
Breakpoint in linked tns-core-modules source is not hit in VSCode on initial app start when using a very thin (lightweight) NativeScript app (e.g. created from blank template) even when stopOnEntry is set to true. After initial load debugging works as expected. A workaround proposed by @DimitarTachev is to place a debugger; statement in the beginning of the file-to-debug.
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 - 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
},
- Try to debug using the newly added configuration
- Breakpoint in
OnLoaded()is not hit
Expected behavior
Breakpoints should work on initial app start as well
- 主要言語
- JavaScript
- スター
- 1.1k
- フォーク
- 204
- 平均マージ
- 1日 9時間
- マージ済み PR(30日)
- 8
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
NativeScript/nativescript-cli のほかの issue
-
in-progress
NativeScript/nativescript-cli#6140 · コメント 2 件 · 担当者 1 名 ·
-
NativeScript/nativescript-cli#6090 · 担当者 1 名 ·
-
in progress
NativeScript/nativescript-cli#6015 · リアクション 1 件 · 担当者 1 名 ·
-
question
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
NativeScript/nativescript-cli#5992 · コメント 5 件 ·
-
feature-pending-triage
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
NativeScript/nativescript-cli#5975 ·
NativeScript/nativescript-cli の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
sugarlabs/musicblocks#8847 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
Request: SumUp オープンnew icon permissions in review
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
simple-icons/simple-icons#15027 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
TheOdinProject/curriculum#31408 ·